我见过两种方式,都能实现,只是结构有些不同。在你的经验中,哪种更好并且为什么?
我见过两种方式,都能实现,只是结构有些不同。在你的经验中,哪种更好并且为什么?
实际上,我可以提供多个选项,其中一些在主体中呈现。
<input onclick="myfunction()"/>
- 最好将其放在脚本主体内的事件处理程序中。注:最后一项适用于页面阻止(感知加载速度)。用户的感知即是他们的现实-如果它被感知为加载更快,则确实加载更快(即使代码中仍然可能发生某些事情)。
编辑:参考资料:
注意事项:如果您将脚本块放置在标记中,可能会影响某些浏览器中的布局(IE7和Opera 9.2已知存在此问题),因此请将它们放在隐藏的div中(在div上使用类似于:.hide { display:none; visibility:hidden; }
的CSS类)
标准:请注意,如果有疑问,标准允许将脚本块放置在几乎任何地方:http://www.w3.org/TR/1999/REC-html401-19991224/sgml/dtd.html 和 http://www.w3.org/TR/xhtml11/xhtml11_dtd.html
EDIT2:请注意,只要可能(总是?),您应该将实际的Javascript放入外部文件并引用它们-这不会改变相关顺序的有效性。
$().on("error", function(){});
是一个例子,如果您想避免多个错误(在备份图像上),请尝试使用 one
函数 $().one("error", function(){});
- jQuery特定的,但是您可以反转源代码,如果想要纯 JavaScript。 - Mark Schultheisshead
部分和在关闭body
标签部分之前的javascript?这一直感觉像是一个老妇人的故事。浏览器肯定要在解析头部或正文之前下载整个HTML文档吧?为什么现代浏览器会同步处理页面呢?即使遇到某些脚本,也不会停止解析HTML。 - gawpertronW3Schools有一篇关于这个主题的不错的文章。
<head>
中的脚本
要在调用时执行脚本,或者在触发事件时执行脚本,需要将其放置在函数中。
将您的函数放在部分中,这样它们都在一个位置,并且不会干扰页面内容。
<body>
中的脚本
如果您不希望将脚本放置在函数内部,或者如果您的脚本应该编写页面内容,则应将其放置在部分中。
我总是把我的脚本放在头部。原因如下: