在说明event对象之前必须先说明下EventTarget。因为这个涉及到event的基础。
EventTarget is a DOM interface implemented by objects that can receive DOM events and have listeners for them.
嗯,这个就是EventTarget的定义啦。常见的EventTarget有Element, document, window,还有不常见的XMLHttpRequest, AudioNode, AudioContext等等。大多数的EventTarget(element, document, and window)都可以通过属性 on+事件名称的方式添加时间监听函数。
EventTarget的方法:
EventTarget.addEventListener (type, listener[, useCapture])
添加一个type事件的监听函数listener。useCapture指定是否使用捕获,默认是false。
EventTarget.removeEventListener (type, listener[, useCapture])
从EventTarget的type事件监听函数栈里移除监听函数listener,这几个参数必须和添加是一致。
EventTarget.dispatchEvent (event)
分发event事件。
/** 请在Chrome的控制台里运行以下程序 */
;(function () {
/** JS通过创建点击事件批量删除新浪微博关注的人。 */
var o = document.getElementsByClassName('myfollow_list');
var e = new MouseEvent('click', { 'view' : window, 'bubbles' : true });
Array.prototype.slice.call(o).every(function (a, b, c) {
a.dispatchEvent(e);
return true;
});
document.querySelector('a.W_btn_d:nth-child(4)').dispatchEvent(e);
})();
首先登入新浪微博,打开我关注的人列表。
按F12在console里面运行上面的JS。