这个折磨了我一小段时间,我之前写的
$("#id").attr("disabled", "disabled");在IE8里就是会老老实实地把disabled="disabled"加到html里,所以之后在CSS里也放心大胆地写[disabled="disabled"]无压力……
后来放到IE9和火狐里测试发现CSS各种不灵,查了半天,最后发现……在IE9和火狐里,上面那句Jquery语句会在html里只会加上disabled,而不是disabled="disabled"
因为disabled这个属性和readonly一样,只要存在即可,后面等于什么其实是无所谓的,所以IE9和火狐就完美地把它给cut了。于是CSS也就不灵了。
于是我想干脆写成
$("#id").attr("disabled", "");
结果发现……这句话完全不不灵,什么 也加不进去……
也就是说必须给disabled一个值内容,不给不行。但是就算给了,在IE9和火狐里也会帮你给清掉……真心神奇……= =不知道为什么。
本文探讨了使用jQuery在不同浏览器中设置HTML元素的disabled属性时遇到的问题,特别是在IE9和Firefox中的表现差异,并尝试提供解决方案。
45

被折叠的 条评论
为什么被折叠?



