簡體   English   中英

jQuery-$(#)。remove()與document.getelementbyid()。remove

[英]JQuery - $(#).remove() vs document.getelementbyid().remove

本來我有這樣的刪除功能:

function ViewWorkflowDetail(btn, workflowId) {

      $("#workflowDetailPanel").remove();

      if (document.getElementById("workflowDetailPanel") == null) {
             // Do something usefull here
      }
}

哪個工作出色。 但是(本着使用盡可能多的JQuery的精神),我將其更改為:

function ViewWorkflowDetail(btn, workflowId) {

      $("#workflowDetailPanel").remove();

      if ($("#workflowDetailPanel") == null) {
             // Do something usefull here
      }
}

但是現在$("#workflowDetailPanel")不再為null。 如果我再次將其更改回(至document.getElementById) ,則不再有問題。 為什么第二個選項繼續查找該div? 是否以某種方式在某種緩存中維護了JQuery對象?

注意:完全相同的設置/數據用於測試兩種情況。

它永遠不會為null,因為如果元素不存在,jQuery將返回一個空數組,因此您必須檢查數組的長度

  if ($("#workflowDetailPanel").length > 0) {
         // Do something usefull here
  }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM