将DOM元素作为JavaScript对象属性进行访问

时间:2014-12-12 16:17:39

标签: javascript object



var editor = {
  "test1": document.getElementById("a"),
  
  "test2": function() {
    return document.getElementById("a")
  },

  "editCont": function() {
    console.log(editor.test1.id); // this returns 'cannot read property 'id' of null'
    console.log(editor.test2().id); // when removing the above console.log, this returns 'a'
  }
}

<h1 id="a" onclick="editor.editCont()">Click me!</h1>
&#13;
&#13;
&#13;

控制台为test1和&#39; a&#39;返回null。为了第二个。

editor.test1可以工作而不必将它放在像editor.test2这样的函数中吗?

我知道如果DOM元素不存在则无法找到,但是第二个console.log工作正常,那么第一个console.log的原因是什么?

0 个答案:

没有答案