Javascript 如何设置要首先触发的事件?
我想通过Tampermonkey(一个可以插入用户脚本的浏览器插件)将javascript代码注入网站 我想注射:Javascript 如何设置要首先触发的事件?,javascript,html,event-handling,tampermonkey,dom-events,Javascript,Html,Event Handling,Tampermonkey,Dom Events,我想通过Tampermonkey(一个可以插入用户脚本的浏览器插件)将javascript代码注入网站 我想注射: function temp() {...} window.addEventListener("beforeunload", temp); 该网站可能已经有 window.onbeforeunload = function() {...} window.addEventListener("beforeunload", otherFunction); …等等,也就是说,窗口对象已经
function temp() {...}
window.addEventListener("beforeunload", temp);
该网站可能已经有
window.onbeforeunload = function() {...}
window.addEventListener("beforeunload", otherFunction);
…等等,也就是说,窗口对象已经有了一些事件,我甚至不知道它们的函数名是什么,我的“temp”函数将最后附加到窗口对象上
但是我想在窗口关闭后首先触发临时功能
可能吗?谢谢你的帮助 添加此jquery插件:
(function ($) {
$.fn.bindFirst = function(name, fn) {
this.on(name, fn);
this.each(function() {
var handlers = $._data(this, 'events')[name.split('.')[0]];
var handler = handlers.pop();
handlers.splice(0, 0, handler);
});
};
})(jQuery);
然后使用如下所示:
window.bindFirst("beforeunload", temp);
添加此jquery插件:
(function ($) {
$.fn.bindFirst = function(name, fn) {
this.on(name, fn);
this.each(function() {
var handlers = $._data(this, 'events')[name.split('.')[0]];
var handler = handlers.pop();
handlers.splice(0, 0, handler);
});
};
})(jQuery);
然后使用如下所示:
window.bindFirst("beforeunload", temp);
谢谢…但是你可以提供纯javascript版本吗?我真的很感激,抱歉,但我认为这不是答案,因为原始网站的事件使用纯javascript,jquery无法收集它,甚至无法更改执行顺序。谢谢……但您可以提供纯javascript版本吗?我真的很感激,抱歉,但我认为这不是答案,因为原始网站的事件使用纯javascript,jquery无法收集它,甚至无法更改执行顺序