创建一个视频元素的包装器。
function YMplayer() {
this.video = document.getElementById("video"); /* video object */
this.addEvents();
}
YMplayer.prototype.addEvents = function () {
var obj = this.video;
var events = ["load","click"];
if (obj) {
if (obj.addEventListener) {
for (var i in events) {
obj.addEventListener(i, this.dispatch(i), false);
}
} else if (obj.attachEvent) {
for (var j in events) {
obj.attachEvent("on" + j, this.dispatch(j));
}
}
}
};
/* Method to dispatch the events */
YMplayer.prototype.dispatch = function (evt) {
var evtt = document.createEvent("Events");
evtt.initEvent(evt, true, false);
document.dispatchEvent(evtt); /* working fine */
};
var YP = new YMplayer();
但我希望能够从上面的YMplayer
对象中分发事件。
需要一个解决方法来访问YMplayer
实例的addeventlistener
。类似于:
YP.addEventListener("load",callback);