2011-04-03 22 views
5

可以在文檔之外的其他標籤上使用.ready()事件嗎? 例如:可以在除文檔之外的其他標籤上使用.ready()事件

$("#test").ready(function() { 
    $("#test").click(function() { 
    alert("test"); 
    }); 
}); 
+0

你爲什麼需要?如果文檔已被加載,那意味着整個DOM已準備好進行操作,除非您正在動態加載內容。在這種情況下,您可以使用$('。my_class')。live('click',function(){});在document.ready事件處理程序中,將事件綁定到可能尚未加載的DOM。 – 2011-04-03 12:16:36

回答

10

引用.ready()'s documentation's page

.ready()方法只能 稱爲jQuery對象匹配 當前文檔


選擇器可以省略上,但它不會改變一件事:它仍然可以在文檔上工作換貨。

0

是的,你可以,但它會在$(document).ready()的同時觸發,所以會有什麼意義呢?

+0

對不起,Pascal Martin是對的。 – 2011-04-03 12:17:06

1

以我自己的觀點$(「#test」)。ready表示您檢查#test是否在dom中加載。 @ZeSimon指出,如果文檔加載,那麼肯定#test包含在dom中。但有時內容來自ajax請求,那麼它不會在dom中加載,如果您對它們調用click事件,則不起作用。

長度> 0可以用來檢查#test是否存在,而不是使用就緒,因爲沒有意識到它們使用ready事件來檢查它們。

如果您#TEST來自Ajax請求,那麼你有一些選項

  1. 綁定在其上的單擊事件

  2. 使用Live(「點擊」)附着於內容的活動[誰也許通過阿賈克斯請求]

相關問題