我的事件处理程序是在事件被激发之前执行的,为什么
My event handler is executed before the event is fired, why?
我有一个带按钮的弹出窗口。当我点击按钮时,我希望发生一些事情,比如说警报。
我遇到的问题是,一旦弹出窗口启动,onclick事件就会触发,而不是在单击按钮时。
这是代码。任何想法都将不胜感激。
var popup = open("", "Popup", "width=300,height=200");
var btn = popup.document.createElement("button");
btn.style.height = "50px";
btn.style.width = "150px";
popup.document.body.appendChild(btn);
btn.innerHTML="button1";
btn.onclick = alert("hello");
在您的代码中
btn.onclick = alert("hello");
onclick没有被解雇。仅alert
被立即执行。你应该把它包装成一个函数:
btn.onclick = function(){ alert("hello");}
为btn.onclick事件分配函数。
相关文章:
- 为什么onsubmit函数似乎没有执行
- 为什么自我执行匿名有效
- 为什么spyOn"停止函数“”的所有执行;Jasmine(要求澄清Jasmine 2.2间谍文件)
- 为什么AngularJS在每个摘要循环上都执行函数
- 为什么 .on() 方法不执行第一个处理程序
- 如果总是执行finally,为什么try会返回未更改的值
- 为什么在ASP.NET Ajax更新面板中执行任何操作后javascript元素都停止工作
- 为什么我在单个事件上执行多个
- 为什么 setTimeout(., 0) 不立即执行
- 为什么未执行的评估对某些浏览器中的行为有影响
- 为什么 body onload = javascript 函数连续执行
- 为什么通过javascript执行php可以工作
- 为什么这个正则表达式需要这么长时间才能执行
- 为什么控制器函数没有执行 Angular Js 1.5.5
- 为什么Javascript不按顺序执行代码
- 为什么javascript ES6 Promises在解析后继续执行
- 为什么用构造函数创建对象会执行对象's方法
- 为什么可以't通过“;数据执行防止”;
- .每个循环都没有完全执行..为什么?(代码和日志可用)
- 每当我尝试将一些修改后的值赋给脚本标记内的全局声明变量时,脚本标记就会停止执行.为什么