这让我抓狂。
当我加载页面时,我启动一个 window.onfocus 函数:
initializeFocusDetecttor: function () {
window.onfocus = function () {
var options = {
useFade: false
}
$.OverWatch.worker.getView("/OverWatch/UpdateWatch", function () {
$.OverWatch.init();
}, options);
}
}
但是我不希望每个页面上都有这种行为,但我不知道如何删除/重置它。
我已经尝试过
window.onfocus = null;
window.onfocus = function(){return;};
window.onfocus = "";
但是不起作用
最佳答案
如果您将其更改为使用 jQuery 事件处理,则可以将其删除(例如使用 off
)。
initializeFocusDetecttor: function () {
$(window).on('focus.mine', function () {
var options = {
useFade: false
}
$.OverWatch.worker.getView("/OverWatch/UpdateWatch", function () {
$.OverWatch.init();
}, options);
});
});
// Some condition - turn it off
$(window).off('focus.mine');
此示例将自定义命名空间 .mine
添加到事件名称中,以便您可以专门定位它,而不会影响使用焦点事件的其他代码。
关于javascript - 如何删除/重置window.onfocus功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36716342/