禁用 IE9 中的链接 - 原型 stop() 不起作用

2024-04-08

IE9 仍处于 Beta 阶段,但仍然有一个问题:

使用prototype.js 1.6.1,向链接添加点击事件并覆盖默认链接行为的正确形式是:

mylink.observe('click', function(e){
   doSomething();
   e.stop();
});

虽然这在我尝试过的所有其他浏览器中都能完美运行,但 IE9 是一个独特的例子。默认事件行为触发,我的链接将我带到链接位置。看起来stop()在 IE9 中没有完成它的工作。

下面的代码在IE9中完美运行:

mylink.onclick = function(){
   doSomething();
   return false;
}

知道我可以做些什么来修复 IE9 中使用的原型方法吗?


prototype.js 版本低于 1.7 会通过浏览器嗅探来应用跨浏览器兼容的修复程序。

prototype.js 用它的实现覆盖了本机方法,这在 IE 9 中失败;尽管它支持 DOM Level 2 事件。

新版本的prototype.js没有这个问题,因为它进行“特征检测”而不是“浏览器嗅探”

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

禁用 IE9 中的链接 - 原型 stop() 不起作用 的相关文章

随机推荐