首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >将onclick事件添加到JavaScript中新添加的元素

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

Stack Overflow用户
提问于 2010-07-23 15:39:47
回答 9查看 278.4K关注 0票数 94

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

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

但是当我单击该元素时,我看不到警告框正在工作。事实上,任何与JavaScript相关的东西都不起作用。

下面是我用来添加新元素的代码:

代码语言: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; 
}

下面是我调用这个函数的方法:

代码语言:javascript
复制
<button onclick=add_img()>add image</button>

现在,图像可以完美地在浏览器中绘制。但当我点击图片时,我不会收到警告。

EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2010-07-23 15:42:07

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

代码语言:javascript
复制
elemm.onclick = function() { alert('blah'); };

而不是。

票数 199
EN

Stack Overflow用户

发布于 2018-06-08 03:54:41

您还可以设置属性:

代码语言:javascript
复制
elem.setAttribute("onclick","alert('blah');");
票数 33
EN

Stack Overflow用户

发布于 2010-07-23 15:42:55

不确定,但试一试:

代码语言:javascript
复制
elemm.addEventListener('click', function(){ alert('blah');}, false);
票数 29
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3316207

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档