使用 JavaScript 和 jQuery 我正在尝试将Selector缓存到 Objects 属性。
我保存$("#dnsTitle")到zPanelDNS.cache.dnsTitleId
但是在我的zPanelDNS.events函数中,您可以看到我尝试使用选择器和缓存版本的位置。
由于某种原因,缓存的版本不能像我想象的那样工作。我将两个选择器都写入控制台日志,它们都找到了目标元素,但由于某种原因,缓存版本不起作用。
这是 2 控制台中的输出,您可以看到它们略有不同...
$("#dnsTitle") 作品=  
[div#dnsTitle.account accountTitle, context: document, selector: "#dnsTitle", jquery: "1.9.1", constructor: function, init: function…]
zPanelDNS.cache.dnsTitleId 不工作=  
[context: document, selector: "#dnsTitle", jquery: "1.9.1", constructor: function, init: function…]
JavaScript...
var panelDNS = {
  unsavedChanges: false,
  init: function () {
    panelDNS.events();
  },
  cache: {
    dnsTitleId: $("#dnsTitle"),
    translation: {
      absolute: 0,
      relative: 0,
      sinceDirectionChange: 0,
      percentage: 0
    }
  },
  events: function() {
    // Activate SAVE and UNDO Buttons when Record Row EDITED
    $(document).on("keydown", "#dnsRecords input" ,function() {
        // Using Selector
        // DOES WORK
        $("#dnsTitle").find(".save, .undo").removeClass("disabled");
        console.log($("#dnsTitle"));
        // Using Cached Selector panelDNS.cache.dnsTitleId
        // DOES NOT WORK
        //panelDNS.cache.dnsTitleId.find(".save, .undo").removeClass("disabled");
        console.log(panelDNS.cache.dnsTitleId);
    });
  }
}
$(function(){
    panelDNS.init();
});