我试图将一段代码附加到按钮OnClick属性.
// Creating a Button var btn = document.createElement("BUTTON"); // Append a text to the button var t = document.createTextNode("random text"); btn.appendChild(t); // attach the function to the eventLisenter btn.addEventListener('click', handleClick); // function to be executed var handleClick = function (event) { alert("DBZ"); }
按钮出现在它所属的位置,其中的文本也是如此,但是当我按下按钮时,函数内的代码将不会执行,没有任何反应.我尝试在Firefox和Google Chrome中运行代码.
我还尝试将"click"属性更改为"onclick"属性,在附加时添加/删除函数括号,并使用btn.attachNow方法.什么都没发生.
非常感谢任何帮助,在此先感谢.
您正在使用函数表达式来定义函数,并在尝试分配事件处理程序后执行此操作.
因此,btn.addEventListener('click', handleClick);
是一样的btn.addEventListener('click', undefined);
将函数定义移到代码中,使其首先发生.
更好的是,使用函数声明而不是函数表达式.
function handleClick (event) { alert("DBZ"); }
然后它将被提升并在调试器中查看时具有有用的名称.