js动态生成的元素绑定事件

xiaoxiao2021-02-28  66

只有一个原则,就是新生成节点与节点绑定事件必须在一个函数作用域内

<html> <head> </head> <body> <button id="info">你好</button> </body> <script> var info=document.getElementById("info"); info.addEventListener('click',function(){ //生成新节点 var body=document.getElementsByTagName("body")[0]; var button = document.createElement("button"); button.setAttribute("id", "changed");//设置Id属性 button.innerHTML="你ye好"; //新节点绑定事件 button.addEventListener('click',function(){ this.innerHTML="niyehao"; },false); //动态生成新节点 body.appendChild(button); },false); </script> </html> 当然也可以通过innerHTML的方式生成新节点。这时在innerHTML的内容里通过οnclick=“...”的方式,在生成新节点的同时绑定事件

document.getElementById('main').innerHTML="<a class='shuaxin' href='#' id='refresh' οnclick='refresh()'></a>"; //刷新当前页面 function refresh(){ if(typeof myChart!="undefined"){ myChart.showLoading(); } if(document.getElementById('main')!=null){ document.getElementById('main').innerHTML=""; } window.location.reload();//刷新当前页面. };

转载请注明原文地址: https://www.6miu.com/read-84549.html

最新回复(0)