在javascript中手动执行事件
do events manually in javascript
是否可以手动执行DOM事件?例如,如果你有一个链接,并想通过代码调用它的默认事件函数:
<a href="one.html" id="a">main page<'a>
document.getElementById("a").onclick();
查看initMouseEvent
创建鼠标事件后初始化该事件的值(通常使用document.createEvent方法.
实时演示
var event = document.createEvent("MouseEvents"),
anchor = document.querySelector('a');
event.initMouseEvent("click", true,
true, window, 0,
0, 0, 0, 0, false,
false, false, false,0, null);
anchor.dispatchEvent(event);
MDN以及提供的示例
您可以按照的方式
document.getElementById("a").onclick=function(){f1()};
function f1()
{
document.getElementById("demo").innerHTML=3;
}
使用类似以下的触发事件
var triggerEvent = function (element, name, data) {
var event;
if (window.CustomEvent) {
event = new CustomEvent(name, {
detail: data || {},
bubbles: true,
cancelable: true
});
} else {
event = document.createEvent("Event");
event.initEvent(name, true, true);
event.detail = data;
}
element.dispatchEvent(event);
};
你会像一样使用它
triggerEvent(input, 'change', {changedText : "Custom data here in this Object"}
根据配置,您可能会得到以下错误
Refused to display 'https://www.some.com/?gfe_rd=cr&ei=50JbU_yHKdGQiAec9IH4Bg' in a frame because it set 'X-Frame-Options' to 'SAMEORIGIN'.
jQuery可以很好地完成您想要的操作:
http://api.jquery.com/click/
$("#a").click();
这将自动调用href和附加到匹配元素的dom事件。
相关文章:
- 使用react js在跨域上执行事件javascript
- 如何使用cURL或其他方式在点击时执行事件
- javascript执行事件顺序
- While Scrolling:如果scrollTop()等于或达到一个值,则执行事件
- 如何使用gulp-jslint-simple成功执行事件
- 如果初始事件返回 false,则停止执行事件侦听器
- 我怎么能等待在javascript中执行事件
- 使用 AJAX 在 jQuery 和 C# 之间传递变量和执行事件
- 执行 C# 事件处理程序,然后执行该 js 函数
- Vue.js 在组件渲染后执行事件触发器
- 在事件的自然行为之前执行事件
- javascript更改类没有't执行事件
- 如何按顺序执行事件函数
- 在worker上执行事件对象.Onmessage从不包含任何有趣的数据之外的东西
- 选项更改,执行事件javascript
- 使用node.js在进程终止时执行事件
- 从此特定父类查找兄弟类以执行事件
- 使用jquery创建弹出窗口并执行事件
- Javascript执行事件点击
- 单击除一个元素之外的所有内容时执行事件