我传统上使用JavaScript作为“UI胶水”,并且(令人遗憾的是)将JS视为“玩具”之一。但是,我已经改变了方向,并且在使用它时发现了一些真正的力量 - 尤其是与JSON / jQuery相结合。
我的问题涉及动态创建元素,然后将它们附加到DOM。看来,当发生这种情况时,只有对象的副本被附加到DOM,我将失去对它的引用。例如,如果我使用createElement创建一个全局对象(比如“a”),设置一些属性(“href”,“title”等),然后将它附加到DOM中,对我的全局对象的任何原始引用对附加元素没有影响。我确信我能找到刚刚插入的对象,但这似乎比应该更多的工作。我错过了什么吗?
答案 0 :(得分:0)
var new_div = document.createElement('div');
new_div.id = 'foo';
编辑:重新阅读你的问题,你是说在appendChild之后new_div不起作用?我很确定它应该。你不是通过innerHTML或类似的东西添加它吗?
也许你的var超出了你试图阅读它的范围。 (即,您是在一个函数中创建它并从另一个函数中读取它?)。尝试全局声明对象。
答案 1 :(得分:0)
您原创的全球参考文献仍然可以正常使用。你想用它做什么?你有任何示例代码吗?
答案 2 :(得分:0)
您使用的是库还是包装原生DOM对象的东西?这可能是问题......
答案 3 :(得分:0)
所有对象都通过JavaScript引用传递,HTMLNodes也不例外。在为其指定不同的值之前,您的原始引用应始终有效。听起来你有一个范围问题。我们能看到代码吗?