【发布时间】:2011-04-01 16:45:38
【问题描述】:
让我首先向任何 IE 用户指出(这在 Chrome、Safari 或 Firefox 中不是问题)提示提示;)
所以...我在 IE 中的工具提示有问题,我有一个 onmouseover 侦听器,用于所有要悬停的元素,然后在我的 mouseover 函数中,我有一个非常基本的跨浏览器声明......
var event = e || window.event,
el = event.target || event.srcElement;
我遇到了 IE 中不存在的窗口对象或其他东西的问题,在我添加了一个标志以忽略从一个元素鼠标悬停到工具提示本身的过程中的鼠标悬停之后(在允许的时间周期内) , 300 毫秒)。换句话说,标志是忽略从原始鼠标悬停到工具提示的路径上的鼠标悬停。
所以逻辑看起来像这样......
loadtip.refMouseOver = function (e) {
var event = e || window.event, el = event.target || event.srcElement;
//console.log(window); // <-- throws error in IE (Member not found)
// Reset the lastHoveredRef data.
tipManager.lastHoveredRef = null;
tipManager.lastHoveredRef = [el, event];
// true means there is a tip open still, so if no tip is open.
if (tipManager.tipState !== true) {
tipManager.processTip(el, event);
} else {
return; // do nothing
}
}
当我在 IE 中快速从一个元素悬停到下一个元素且工具提示仍处于打开状态时,将出现“未找到成员”错误。
我通过 try catch 阅读了有关 window.open 和 close 的内容,但我没有看到它是如何相关的。非常感谢任何帮助。
谢谢
【问题讨论】:
标签: internet-explorer javascript-events