资源描述:
《javascript代码因逗号不规范导致ie不兼容的问题_javascript技巧》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、JavaScript代码因逗号不规范导致IE不兼容的问题在用ExtJS做前端开发的时候,发现系统可以在谷歌浏览器、火狐下正常显示,但是用IE浏览器打开就会报错,报错信息如:Expectedidentified,stringornumbero后来,检查的代码的时候发现,是由于js代码中逗号用的不规范导致的IE不兼容。由于我是用eclipse来写代码的,下面我也就介绍怎么用eclipse来解决这个问题:例如有卜•面这么一段不规范的代码:Ext.onReady(function(){varpanel=Ext.creat
2、eExt.container.Viewport/,{layout:'border,,items:[{title:'northpanel",html:'northcontent',region:'north,,height:100,},{title:'westpanel",html:5westcontent',region:'west/,width:150,//这是备注1},{title:'mainpanel",html:Jmaincontent',region:'center,,/*这是备注2*/}]});});
3、可以看到,在100、150、center后面都有一个逗号(,),用IE运行的话,其实是会报错的。那么既然代码已经写成这样了,怎么检测到这个问题呢!图1:FileSearch如上图1所示,可以用eclipse的FileSearch功能,利用正则表达式进行搜索,止则表达式为,s*}。不过,这有个问题,只能检索出上血的第一处错误,对于加了〃或者/**/来注释的情况,是检测不岀来。不过,你也可以用yuicompressot这样的js代码压缩工具来压缩代码,压缩的时候会将其中的所有的注释全部去掉,然后再来检测压缩后的js
4、文件即可。当然,你也可以自己写算法来检测,不过,这个对于普通人來说还是有难度的!不过,我建议用另一个方法,就是利用插件,我这里用的是Spkct插件,Spket的官网是:http://www.spket.com/,可以到里面去下载Spket的eclipse插件,也可以直接在eclipse的market中下载,下载完以后安装下这个插件,然后将js文件用spket打开。1-Ext.onRe3dy(function(){2早34亨56789'y1011121314*151617181920[21varpanel=Ext・
5、creatG('Ext・container*.Viewpo{layout:1border*}items:[{title:FoMhpanel1,html:Forthcontent1,region:fnorth',height:100z},{title:*westpanel",html:*westcontent',region:*west',width:150^//这是备注1},{title:'mainpanel*,html:"maincontent*,region:*center'鼻//这是备注2}]});});*
6、Ye图2:利用Spket检测如上图2所示,可以发现Spket自动的检测了代码的不规范,将其中冇问题的地方都标注了出來,我是建议用这个方法,因为可以在编写代码的时候,就发现问题,有助于写岀规范漂亮的代码!另捉一下,冇些时候兼容性是因为使用的对彖是IE中不存在的,比如console对象,在火狐和谷歌中是存在的,但是在ie屮使用console,info就报错了!所以,记得把一些不兼容的对象从代码中剔除掉!以上给大家介绍了JavaScript代码因逗号不规范导致IE不兼容的问题,希望对大家有所帮助!