在尝试将我的一些JS转换为跨浏览器兼容性时,我遇到了一些我无法查明问题的奇怪行为。
我想使用jQuery转换window.event.x(IE特定的),所以我的代码如下:
function someFunction(e){
var ev = $.event.fix(e);
alert(ev.pageX);
}
这会在IE中返回正确的值,但在FF中它会返回八位数。有线索吗?
答案 0 :(得分:1)
确保您使用的是最新版本的jQuery。在官方网站上,它声明已为IE修复了event.pageX和event.pageY,因此您可能不需要使用fix();
答案 1 :(得分:0)
至少在我的本地XP VM上,当使用这样的Javascript时,Firefox和IE 8都会为X / Y坐标返回相同的合理值:
$('#some-big-div').click(function(e) {
console.log("mouse coords: (" + e.pageX + ", " + e.pageY ")")
}
在您的示例中对$ .event.fix()的调用可能是对FF输出的影响吗?