[英]When document.getElementById() doesn't?
我有一些JavaScript從HTML文檔中通過ID獲取元素。
在一個特定場景中,document.getElementById(idString)方法在IE8兼容模式下返回null,但是jQuery等效方法有效。 我需要弄清楚為什么原生呼叫不起作用。
這是一個例子:
var myId = "e_" + someId;
var myNativeDiv = document.getElementById(myId);
var myjQueryDiv = $("#" + myId);
alert(myNativeDiv + " - " + myjQueryDiv); // alerts "null - [Object object]"
我已經檢查過myId
在文檔中是唯一的。
任何調查途徑都值得贊賞。
更新 - 實際上, myjQueryDiv
也是空的,但我猜jQuery使它不為空。 但是,調用parentDom.find("#" + myId);
返回正確的元素,其中parentDom是我需要找到的元素的祖先。
對我來說很好
好的,這就是答案。
我之前已經detach()
了一個祖先元素,所以當從分離片段中的祖先元素執行時,jQuery find可以通過ID看到該元素。
當然,兩個jQuery都沒有上下文,而且本機方法沒有返回元素,因為它不是document
那一部分。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.