2010-03-04 102 views
4

我正在使用lazy load jquery plugin

它告訴我把這個在我的代碼來激活它:

$("img").lazyload(); 

我必須把這個$(document).ready()?或者我可以把它放在頁面的頂部:

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

$(document).ready...{} 

</script> 
</head> 

回答

3

demo page將它放在$(document).ready()中,除了它使用簡寫$()函數來完成它。

(從演示)

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

(注意,$()是別名的jQuery()功能,這需要CSS選擇器,HTML元素和回調運行DOM負載時)

如果您沒有將它放在ready()函數中,那麼它可能只會影響頁面中早於腳本的圖像。如果您將腳本放在HEAD中,那不是任何圖像。

因此,除非庫以某種方式使用JQuery的.live()函數,否則您需要將它放在ready()中。

+0

接受多次反饋? *爲什麼*反對票? – 2010-03-04 00:44:40

+0

也許我錯了.live()的工作方式?或者關於將腳本放在頁面的一半?誰知道! – kibibu 2010-03-04 00:47:37

+0

@kibibu,可能,但我的問題不是你,因爲這樣,但我希望那些倒票的人可以解釋他們爲什麼這樣做。或者,如果沒有這個,那些比我更瞭解js/jQuery的人可能會解釋一下。 – 2010-03-04 00:50:37

0

你需要把它放在裏面,因爲它使用jQuery庫。

+1

我對jQuery/js相當陌生,所以如果我錯了,還好嗎?但是,一旦jQuery庫的加載不在其中的功能可訪問,只要他們在只要它們在適當的'

相關問題