我想用下面的代碼設置對DOM元素的引用。出於某種原因,在引用完成之後立即調用的任何東西都可以正常工作,但在應用程序的任何其他位置調用它都不會發生任何事情我沒有收到任何錯誤,比如「無法設置undefined的innerHTML」,這是最奇怪的部分。緊接聲明後,它工作得很好,以後它不會做任何事情,但其他元素以相同的方式引用並且在相同的函數中工作正常。無法引用DOM對象
var dom = new function() {
this.signInA = document.getElementById("signInPin");
this.orderEntry = document.getElementById("orderEntry");
this.menuGroup = document.getElementById("openGroup");
}
<div id="orderEntry">
<div id="openGroup">
</div>
</div>
後來我打電話
dom.openGroup.innerHTML="TEST";
但什麼也沒有發生。這當然只是應用程序的一小部分,但我已經遍歷整個文檔來檢查DOM的其他所有參考,特別是dom.openGroup。 dom.orderEntry在整個應用程序中工作得很好,而dom.openGroup只在這個聲明的直接空間中工作。
它是使用var dom = new function(){}創建的;像我說的一切工作正常不dom.openGroup – PC3TJ
你也可以在你的例子中使用'dom.openGroup.innerHTML',但它存儲在'dom.menuGroup' – mplungjan
你可以提供[最小,完整和可驗證的例子](http ://stackoverflow.com/help/mcve)? – Grundy