我在頁面上使用jQueryify小書籤,以便我可以從控制檯調用jQuery函數。但每次我調用所選對象jQuery的功能,我得到的錯誤:控制檯中的jQuery無法正常工作
"TypeError: jQuery("li")[0].children[0].html is not a function
[Break On This Error] jQuery('li')[0].children[0].html();
我在螢火嘗試這個問題,以及谷歌Chrome的WebKit的控制檯。
我在頁面上使用jQueryify小書籤,以便我可以從控制檯調用jQuery函數。但每次我調用所選對象jQuery的功能,我得到的錯誤:控制檯中的jQuery無法正常工作
"TypeError: jQuery("li")[0].children[0].html is not a function
[Break On This Error] jQuery('li')[0].children[0].html();
我在螢火嘗試這個問題,以及谷歌Chrome的WebKit的控制檯。
用方括號當你不再使用jQuery對象的工作。
jQuery("li")[0]
這將返回第一li
作爲一個DOMElement,而不是一個jQuery對象。
jQuery("li")[0].children[0]
這將返回第一li
的第一個孩子作爲一個DOMElement,而不是一個jQuery對象。
.html()
此函數僅適用於jQuery對象。對於DOMElements,您可以使用.innerHTML
屬性。
我建議您不要使用DOMElements,而應該繼續使用jQuery對象。嘗試使用這個:
jQuery('li').eq(0).children().eq(0).html()
嘗試以下
jQuery(jQuery("li")[0].children[0]).html();
或更好的
jQuery("li:eq(0)").children(':eq(0)').html();
或另一個
jQuery("li:eq(0)").children().eq(0).html();
即使是這樣一會工夫
jQuery("li").eq(0).children().eq(0).html();
看起來你正試圖在DOM對象children[0]
上調用jQuery函數html
。嘗試包裹在一個jQuery對象,然後調用html
var temp = jQuery("li")[0].children[0];
var html = jQuery(temp).html();
@genesis是的,這是一個DOM屬性。 https://developer.mozilla.org/en/DOM/Element.children – JaredPar
檢查的jQuery("li")[0].children[0]
的結果,這是一個常規的DOM對象不是一個jQuery對象。沒有看到你的HTML,我不能推薦一個更好的選擇,但廉價和骯髒的解決將是
jQuery(jQuery('li')[0].children[0]).html();
這將轉換的DOM對象導致到一具有.html()
功能的jQuery對象。
謝謝!這是有道理的,它現在起作用了! –
訪問jquery對象上的數組元素(使用[])返回一個DOMElement,顯然沒有jQuery的方法。您可能想使用eq()
代替。
您正在點擊書籤,正確的?你能鏈接到你正在使用的書籤和一個你輸入的例子頁面嗎? – Whetstone
剛剛在一個已經加載jQuery的頁面上確認了這一點,所以我不認爲它只是書籤小費。 – HurnsMobile