2016-11-19 92 views
1

不能添加功能元素javascript无法添加“点击”功能的JavaScript

功能modalbg.onclick不行div元素。

var modalbg = document.createElement("div"); 

document.body.appendChild(modalbg); // to place at end of document 
    modalbg.onclick(function() { 
     alert(); 
}) 

错误是:

(index):625 Uncaught TypeError: modalbg.onclick is not a function(…)

回答

3

你的语法:

modalbg.onclick(function() { 
      alert(); 
     }) 

是错误的,报告的错误消息明确地告诉你为什么这是错的:onclick不是一个函数。

适当的语法,如果你必须使用onclick是:

modalbg.onclick = function() { 
     alert(); 
     }; 

虽然我强烈建议你从onclick事件处理器移开,并用EventTarget.addEventListener()而是给:

modalbg.addEventListener('click', alert); 

或者:

modalbg.addEventListener('click', function(){ 
    alert(); 
}); 

参考文献:

+0

感谢大卫,这是语法问题。 谢谢:) – Radian

1

您还可以通过将Event Listener添加到DOM元素来实现此目的。

var modalbg = document.createElement("div"); 
 

 
     document.body.appendChild(modalbg); // to place at end of document 
 
     modalbg.innerHTML = "click me"; 
 
     modalbg.addEventListener('click', function() { 
 
      alert("Hai"); 
 
     })