浏览器对代码要求的严格性
写了一段js里面有这样的一句话:$('<div\>',{
class:'markResult',
id:'markResult'+i,
}).appendTo('#hello');
因为还未对其css进行设计,只是为了调试js通过。页面在firefox和chrome上面
都可以正常打开,无任何的报错,而且js的执行也完全正常。但是当我将使用ie
打开的时候却总是报错。查过来查过去原来是上面代码中的class和js关键字class
重复了。而jquey给其定义的名字是className。所以只需要将上面的代码修改成如下
$('<div\>',{
className:'markResult',
id:'markResult'+i,
}).appendTo('#hello');
在ie下面便可以正常打开和执行了。
由此看来ie对于代码检查似乎要更加的严格一些,而chrome和firefox就要宽松一些了。 1. 你确认firefox没有报错?你用console或者firebug察看了麻?
2 className属性名字,你改为class,还能正常工作吗? 回复 2# imbiss
最开始测试的时候就是用firefox进行测试的,console error里面没有错误。因为执行的时候一直开着console 找错误的。 估计因为你还没有加上样式,所以 className 被改成 class 也看不出来。
我看了一下js 的保留字。http://www.blabla.cn/js_tutorials/090_js_reserved_words.html classs属于未来保留字,所以可以解释浏览器的实现有所不同。
另外这个输入纯前台的问题,其他板块因该更合适。 回复 4# imbiss
当时我也是这么判断,可能因css的没有写所以在chrome和firefox上看不出来,class的确是js的关键字。
发到这个版块,主要是想在这儿分享一下这个发现,因为我的活动主要版块儿是这儿。另外就是现在国内的php和前端基本都是同一个人或是
一个团队。
页:
[1]