jquery的Ajax框架的已经有很多的用户,它有着很多的优点,免费开源,容易上手,轻量级,浏览器的兼容性不错等等。所以我现在的开发都是jquery的框架。
但是最近在使用jquery时,发现了一些问题,一开始我以为是浏览器的兼容,因为开发出来的网站,在IE8出现报错和jquery的基本操作无效,而使用火狐浏览器和谷歌浏览器均能够正常运行。后来经过的我的检查,发现了其中真正的原因,我觉得有必要在此提供给大家提醒。
其实真正的原因也挺简单,主要是浏览器对代码的阅读程度不同,IE8比较严格,而火狐和谷歌则比较宽松。IE8的标记元素必须是规范的html标记,不能是自己随意添加的元素标记如<text></text>、<abc></abc>等。在IE8中不能通过jquery获取不规范的标记元素。而在火狐和谷歌上可以正常运行,虽然火狐和谷歌可以正常的运行,但是这样的编码是不符合Web标准,这样会为开发带来很多意想不到的问题。
另外一个原因,是页面元素的命名问题,大家都知道jquery有着强大的选择器功能,我们是通过定义标记元素的id class来获取对象,这时idclass的命名就成为IE8、火狐、谷歌浏览器兼容错误原因。在火狐和谷歌浏览器中id class 命名不分大小写,jquery选择器的 能够识别,例如:<divid=”AbC”></div>,$(“#abc”).hide(); 火狐、谷歌浏览器可以正常隐藏,但是IE8却不行,同样的,这也是不规范的写法。
以上提供,是为了让大家发现问题的根源,提醒大家注意编码规范,注意这些细节问题,养成良好的编码习惯。
未经允许不得转载:蒋丽君的小站 » Jquery 存在IE8、火狐、谷歌浏览器兼容错误的一些原因