recherche

Maison  >  Questions et réponses  >  le corps du texte

Quelle est la différence entre la déclaration de fonction et la fonction anonyme ? (Novice du front-end demandant de l'aide...)

Si vous définissez une fonction qui modifie l'attribut de style d'un élément à l'aide d'une déclaration de fonction, une erreur sera signalée

Mais aucune erreur ne sera signalée sous window.onload

高洛峰高洛峰2705 Il y a quelques jours952

répondre à tous(3)je répondrai

  • 大家讲道理

    大家讲道理2017-07-05 11:01:56

    Bébé, cela n'a rien à voir avec la fonction que tu utilises ! C'est parce que le chargement sera déclenché après le chargement du document, et vous devez signaler une erreur car le document n'a pas été chargé et l'élément n'est pas trouvé. Mettez le js sous l'élément

    .

    répondre
    0
  • PHP中文网

    PHP中文网2017-07-05 11:01:56

    Cela n'a rien à voir avec la déclaration de fonction et l'anonymat, mais avec le moment de l'appel de la fonction.
    Si nous le modifions comme suit, pouvons-nous toujours trouver le problème avec les fonctions anonymes ?

    function change () { /* ... */ }
    window.onload = change

    Lorsque le premier est appelé, l'élément box n'est pas encore disponible, donc une erreur est signalée ; le second est appelé une fois le DOM prêt, afin qu'il puisse être exécuté. Vous pouvez enregistrer l'objet boîte dans la fonction de modification et voir.

    répondre
    0
  • 扔个三星炸死你

    扔个三星炸死你2017-07-05 11:01:56

    Ce n'est pas le problème. Il faut savoir que le document est chargé de haut en bas. Vous mettez le fichier js à la fin de head
    执行到js文件的时候,这个时候连body都还没加载,自然无法获取到box,也就无法设置css了。
    你可以把js文件放到body:

    .
    .
    .
    .
    <script src="./x.js"></script>
    </body>

    De cette façon, vous n'en avez pas besoinwindow.onload
    如果放在了head里面
    就需要在js文件头部写window.onload=function(){......}

    répondre
    0
  • Annulerrépondre