javascript - Je viens de commencer à apprendre JS et j'ai rencontré un petit problème à résoudre.
黄舟
黄舟 2017-05-19 10:26:53
0
5
609
HTML代码:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Blog</title>
    <script type="text/javascript" src="scripts/abc.js"></script>
</head>
<body>
    <p id="box">id</p>
</body>
</html>

Code JS :
alert(document.getElementById("box").innerHTML);

Pourquoi le code ci-dessus ne peut-il pas être exécuté ? Il n'y a pas de fenêtre contextuelle lors de son exécution dans le navigateur Firefox. De l'aide ?

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

répondre à tous(5)
曾经蜡笔没有小新

Cher, vos fichiers js doivent être placés ci-dessous, l'ordre de chargement est erroné

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Blog</title>
</head>
<body>
    <p id="box">id</p>
     <script type="text/javascript" src="scripts/abc.js"></script>
</body>
</html>
PHPzhong
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Blog</title>
    <script type="text/javascript" src="scripts/abc.js"></script>
</head>
<body>
    <p id="box">id</p>
</body>
<script>
    alert(document.getElementById("box").innerHTML);
</script>
</html>

Comme votre code n'est pas entièrement écrit, je suppose que vous avez écrit l'ordre de chargement à l'envers

Calendrier d'exécution
window.load regarde ça

世界只因有你
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Blog</title>
    <script type="text/javascript" src="scripts/abc.js"></script>
</head>
<body>
    <p id="box">id</p>
    <script>
        alert(document.getElementById("box").innerHTML);
    </script>
</body>
</html>

Testez personnellement que ce code peut ouvrir une fenêtre dans Firefox. Il est possible que votre Firefox empêche l'apparition des boîtes d'alerte.
Passez à console.log(document.getElementById("box").innerHTML) f12 pour afficher la sortie de la console.

Oui, comme l'a dit le frère précédent, votre js arrive en src avant le code du corps. Il n'y avait pas de dom à ce moment-là, donc le node id=box ne peut pas être obtenu. Cela signalera une erreur. Une chose que ceux qui apprennent js doivent savoir est d'ouvrir la console du navigateur pour voir s'il y a une erreur.

世界只因有你

Avez-vous écrit l'alerte dans abc.js ? Si tel est le cas, l'élément avec id="box" ne peut pas être obtenu lors de l'exécution de l'alerte

.
phpcn_u1582
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Blog</title>
    <script type="text/javascript">
    function test(){
        alert(document.getElementById("box").innerHTML);
    };
    window.onload=test;
    </script>
</head>
<body>
    <p id="box">id</p>
</body>
</html>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal