jquery 处理offsetX不兼容Firefox的问题

今天碰见个bug,一个简单的拖拽,用jquery实现时发现在Firefox下不兼容,原因是Firefox下点击事件对象e的offsetX/offsetY属性为undefined,而且该对象中还没有layerX和layerY,查了一下资料发现原来jquery事件监听返回的对象是在原生对象上面做了一层封装,加入了一些jquery自己附加的属性,其中有一个属性originalEvent则是原生的事件对象,利用它可以获取到layerX/layerY

很纳闷为什么jquery没做这层兼容性处理,这种应用场景应该很常见的啊,非要让用户自己多调一步。

时间: 2024-10-22 03:24:11

jquery 处理offsetX不兼容Firefox的问题的相关文章

table拖动(兼容Firefox 3.5/IE6),固定表格宽度

效果:可鼠标拖动td,动态修改它们的宽度 html: <html> <head> <title>table拖动(兼容Firefox 3.5/IE6),固定表格宽度</title> <meta content="charset=utf-8"> <link rel="stylesheet" href="css/22.css" /> </head> <body&g

JQuery与IE6的兼容问题之&lt;Select&gt;

原文地址:http://hi.baidu.com/fengbaobao/item/403cf90be03ba131a2332ac2 在IE7,FF下页面经常会用如下语句对一个Select列表选择其中的值,但是该JQuery语句IE6不支持, $("#CarTrimSeries").get(0).value = '<%=seriesId %>'; $("#CarTrimSeries").attr("value",'<%=serie

兼容firefox,ie,谷歌,阻止浏览器冒泡事件,Firefox不支持event解决方法

兼容firefox,ie,谷歌,阻止浏览器冒泡事件,Firefox不支持event解决方法 // 获取事件function getEvent(){ if(window.event) {return window.event;} func=getEvent.caller; while(func!=null){ var arg0=func.arguments[0]; if(arg0){ if((arg0.constructor==Event || arg0.constructor ==MouseEv

兼容Firefox和IE的onpropertychange事件oninput

原文 兼容Firefox和IE的onpropertychange事件oninput onpropertychange能够捕获每次输入值的变化.例如:对象的value值被改变时,onpropertychange能够捕获每次改变,而onchange需要执行某个事件才可以捕获. 在文本框输入数据的时候,当键盘按下并放开的时候可以使用onkeyup来检测事件,onpropertychange能够捕获每次改变,而onchange需要执行某个事件才可以捕获.可是有的时候我们输入数据是采用粘贴的方式而不是键盘

【jquery】基于 jquery 实现 ie 浏览器兼容 placeholder 效果

placeholder 是 html5 新增加的属性,主要提供一种提示(hint),用于描述输入域所期待的值.该提示会在输入字段为空时显示,并会在字段获得焦点时消失.placeholder 属性适用于以下类型的 input 标签:text, search, url, telephone, email 以及 password. 我们先看下在谷歌浏览器中的效果,如图所示: 获得焦点时: 输入字段: 因为是 html5 属性,自然低版本的浏览器比如 ie6-8 不兼容.下面就介绍下如何在低版本浏览器中

JQuery validate 在IE兼容模式下出现 js错误(成员找不到)的修正:

JQuery validate 在IE兼容模式下 下出现 js错误(成员找不到)的修正: // Add novalidate tag if HTML5. //this.attr( "novalidate", "novalidate" ); if (typeof (Worker) !== "undefined") { this.attr('novalidate', 'novalidate'); } 将第二行注释掉,换成第三行! JQuery val

jquery版本号升级不兼容的问题:$(&amp;quot;input&amp;quot;).attr(&amp;quot;value&amp;quot;)功能发生改变

之前项目中使用的是jquery-1.6.3.js,在这个版本号中,假设我们想获取输入框的值,能够使用$("input").attr("value")或者是$("input").val(),这2种方式是等价的. <input type="text" id="speed" /> $("#speed").attr("value"); $("#speed

关于通过addClass与removeClass用jquery控制有良好兼容的CSS3样式

hi:)好久不见~最近被jquery的animate对某些CSS3特性不兼容搞的头晕眼花,果断百度,阅读了一些高手的博客后突然发现平常很少用到的addClass和removeClass属性居然还可以这么用,真实孤陋寡闻,核心思想是通过CSS3写出可以兼容各项浏览器的标签代码,再写出需要完成的效果(角度rotate,平移translate,切变transform()所谓切变,其实就是把图像的顶部或底部推到一边.缩放scale)通过JQ写出事件被触发时需要调用的addClass,removeClas

让你网页同时兼容FireFox和IE

CSS 兼容要点:DOCTYPE 影响 CSS 处理 FireFox: div 设置 margin-left, margin-right 为 auto 时已经居中, IE 不行. FireFox: body 设置 text-align 时, div 需要设置 margin: auto(主要是 margin-left,margin-right) 方可居中. FireFox: 设置 padding 后, div 会增加 height 和 width, 但IE不会, 故需要用 !important 多