Tests events (on, off, trigger)

This commit is contained in:
Maxime Thirouin
2014-05-04 08:44:33 +02:00
parent 2990f93a20
commit 106b14b851
4 changed files with 144 additions and 0 deletions

View File

@@ -0,0 +1,11 @@
var forEachEls = require("../foreach-els")
module.exports = function(els, events, listener, useCapture) {
events = (typeof events === "string" ? events.split(" ") : events)
events.forEach(function(e) {
forEachEls(els, function(el) {
el.removeEventListener(e, listener, useCapture)
})
})
}

View File

@@ -0,0 +1,11 @@
var forEachEls = require("../foreach-els")
module.exports = function(els, events, listener, useCapture) {
events = (typeof events === "string" ? events.split(" ") : events)
events.forEach(function(e) {
forEachEls(els, function(el) {
el.addEventListener(e, listener, useCapture)
})
})
}

View File

@@ -0,0 +1,30 @@
var forEachEls = require("../foreach-els")
module.exports = function(els, events) {
events = (typeof events === "string" ? events.split(" ") : events)
events.forEach(function(e) {
var event
if (document.createEvent) {
event = document.createEvent("HTMLEvents")
event.initEvent(e, true, true)
}
else {
event = document.createEventObject()
event.eventType = e
}
event.eventName = e
if (document.createEvent) {
forEachEls(els, function(el) {
el.dispatchEvent(event)
})
}
else {
forEachEls(els, function(el) {
el.fireEvent("on" + event.eventType, event)
})
}
})
}