這是HY頭底部的樣子:jQuery的反彈不點火
$('#hello').mouseenter(function() {
$(this).effect("bounce", { times:1, distance:10 }, 800);
});
我鏈接到的jQuery 1.7.2和jQuery UI 1.8。我沒有收到任何錯誤,但是當我將鼠標懸停在#hello div上時,什麼都沒有發生。 任何想法?
謝謝!
這是HY頭底部的樣子:jQuery的反彈不點火
$('#hello').mouseenter(function() {
$(this).effect("bounce", { times:1, distance:10 }, 800);
});
我鏈接到的jQuery 1.7.2和jQuery UI 1.8。我沒有收到任何錯誤,但是當我將鼠標懸停在#hello div上時,什麼都沒有發生。 任何想法?
謝謝!
您的jQuery代碼看起來很好,所以這是最有可能你已經錯過了document ready
塊
所以添加像
$(function() {
$('#hello').mouseenter(function() {
$(this).effect("bounce", {
times: 1,
distance: 30
}, 800);
});
});
的doc ready
處理器將確保當DOM
準備好該代碼會火。
如果您只是使用$("#hello").mouseenter(...)
而沒有任何doc ready block
,那麼在運行此代碼時,如果DOM中沒有任何含有id hello
的元素,則有機會。所以$("#hello")
將返回一個空集和mouseenter
綁定將無法正常工作。
一個例子的標記時它不會不doc ready block
工作,
.
.
.
<script type="text/javascript">
$("#hello").mouseenter(....);
</script>
.
.
.
.
<div id="hello">Blah Blah....</div>
如瀏覽器,解釋的標記順序,因爲它面對它它將立即執行JS代碼。當它在這裏執行JS塊時,它還沒有解析<div id="hello">
標籤,因爲它出現在JS塊之後,所以它們不在DOM那一刻。
因此,對於上述情況$("#hello")
是空的,因此事件綁定將不起作用。因此,它總是安全的把所有的JS代碼裏面document ready
塊像
$(function){
// put all your JS code here
});
非常感謝你的快樂。這非常有幫助!不幸的是,我還不能滿足,但我會收藏這個,並在可以的時候回來。 –
@VGD,非常歡迎閣下,很高興能夠提供幫助。 –
你把上面的代碼裏面'$(文件)。就緒(....'?它的工作這裏罰款http://jsfiddle.net/joycse06/7dgaB/ –
嗨,快樂,我覺得這是某種負載交易。我沒有$(document).ready() 谷歌搜索。是的。謝謝! –
檢查上面的鏈接,並將該javascript代替。我正在添加一個答案。 –