如何在javascript中创建自定义事件?

时间:2016-05-18 17:40:25

标签: javascript events javascript-events

我想制作自己的javascript。有没有可能创建我自己的事件就像点击,悬停。我想要一个真正有用的活动。就像创建一个在用户点击取消/删除按钮时将触发的事件一样。

2 个答案:

答案 0 :(得分:0)

请参阅https://developer.mozilla.org/en-US/docs/Web/API/CustomEventhttps://davidwalsh.name/customevent

var myElement = document.querySelector('p');

myElement.addEventListener("userLogin", function(e) {
  console.info("Event is: ", e);
  console.info("Custom data is: ", e.detail);
});

var myEvent = new CustomEvent("userLogin", {
  detail: {
    username: "davidwalsh"
  }
});

// Trigger it!
myElement.dispatchEvent(myEvent);
<p>Custom Event Element</p>

答案 1 :(得分:-1)

在JavaScript中创建一个事件监听器需要做两件事:(1)选择一个元素来&#34; bind&#34;监听器和(2)添加事件监听器:

// add event listener to table
var el = document.getElementById("#myElement");
el.addEventListener("click", function() {
  alert('element clicked!');
});

当点击ID为myElement的元素时,此特定实现将运行该函数。

查看event listeners上的MDN页面以获取更多信息。

问题是关于&#34; custom&#34;事件,您可以通过以下方式创建自定义JavaScript事件。

var event = new Event('build');

// Listen for the event.
var el = document.getElementById("#myElement");
el.addEventListener('build', function (e) { ... }, false);

// Dispatch the event.
el.dispatchEvent(event);

您可以阅读有关自定义JS事件here的更多信息。