繁体   English   中英

jQuery:我需要在$(document).ready()中调用$(“img”)。lazyload()吗?

[英]jQuery: do I need to put calls to $(“img”).lazyload() in $(document).ready()?

我正在使用lazy load jquery插件

它告诉我把它放在我的代码中来激活它:

$("img").lazyload();

我必须把它放在$(document).ready()吗? 或者我可以把它放在页面的最顶部:

<head>
<script type="text/javascript">
$("img").lazyload();

$(document).ready...{}

</script>
</head>

演示页面将它放在$(document).ready()中,除了它使用简写的$()函数来完成它。

(来自演示)

$( function() {
    $("img").lazyload({placeholder : "img/grey.gif"});
} );

(注意,$()是一个别名到jQuery的()函数,该函数CSS选择器,HTML元素回调运行DOM负载时)

如果您没有将它放在ready()函数中,那么它可能只影响页面中比您的脚本更早的图像。 如果你在HEAD中放置脚本,那就不是图像了。

因此,除非库以某种方式使用JQuery的.live()函数,否则需要将它放在ready()中。

我理解它的方式是,如果你把它放在$(document).ready(...) ,脚本将不会运行,直到DOM加载。 如果你只是将它放在head <script></script>标签中,那么页面必须等待脚本完成才能加载剩余的DOM。

如果脚本修改了DOM,这意味着它将运行,什么都不做,然后页面将加载(没有受到$("img").lazyload()函数的影响。

应该把它放在$(document).ready()中。

你需要把它放在里面因为它使用jQuery库。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM