我正在檢測鼠標是否按照此答案中指定的方式離開窗口:How can I detect when the mouse leaves the window?。如何在鼠標進入iframe時防止文檔鼠標事件被觸發?
問題是,當鼠標進入iframe(在我的情況下是嵌入的Youtube視頻)時,瀏覽器觸發此事件。
我該如何預防?
謝謝!
我正在檢測鼠標是否按照此答案中指定的方式離開窗口:How can I detect when the mouse leaves the window?。如何在鼠標進入iframe時防止文檔鼠標事件被觸發?
問題是,當鼠標進入iframe(在我的情況下是嵌入的Youtube視頻)時,瀏覽器觸發此事件。
我該如何預防?
謝謝!
您只需修改的處理程序是這樣的:
addEvent(document, "mouseout", function(e) {
e = e ? e : window.event;
var from = e.relatedTarget || e.toElement;
// we will check if this won't be iframe
var to = e.target || e.srcElement;
if ((!from || from.nodeName == "HTML")
&& to.nodeName !== "IFRAME") {
console.log('mouse out')
}
});
編輯新增e.srcElement
選項,以支持IE
嗯,我不認爲你可以直接與你將不得不申請某種黑客或解決方法。根據定義,iframe是一個不同的窗口...讓我想一想。 – Ryan