一尘不染

将onclick事件添加到JavaScript中新添加的元素

javascript

我一直试图将onclick事件添加到使用JavaScript添加的新元素中。

问题是当我检查document.body.innerHTML时,我实际上可以看到onclick = alert(’blah’)已添加到新元素中。

但是,当我单击该元素时,我看不到警报框正在运行。实际上,任何与JavaScript相关的功能都无法正常工作。

这是我用来添加新元素的方法:

function add_img() { 
  var elemm = document.createElement('rvml:image'); 
  elemm.src = 'blah.png';
  elemm.className = 'rvml';
  elemm.onclick = "alert('blah')";
  document.body.appendChild(elemm);
  elemm.id = "gogo";
  elemm.style.position='absolute';
  elemm.style.width=55;
  elemm.style.height=55;
  elemm.style.top=200;
  elemm.style.left=300;
  elemm.style.rotation=200; 
}

这是我所谓的函​​数:

<button onclick=add_img()>add image</button>

现在,图像可以完美地在浏览器中绘制。但是,当我单击图像时,不会收到该警报。


阅读 339

收藏
2020-05-01

共1个答案

一尘不染

.onclick应该设置为函数而不是字符串。尝试

elemm.onclick = function() { alert('blah'); };

代替。

2020-05-01