论坛首页 Web前端技术论坛

为何JQuery的属性选择器在IE中失灵...

浏览 4882 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-05-19  
JQuery支持CSS3,这让人很高兴,但是在FF的正常运行下,换到IE中,则运行失败
$("div[name='addLove']")在IE中取到的对象,根本没有办法使用,类似1个空的对象。各位是否遇到这种问题?

PS:IE6-IE8我都试验过了,都不行,而IE对CSS3的支持更是问题,不知道JQuery的选择器,是否是按照CSS来进行的,如果这样,是否也就是说,只要浏览器不支持CSS3或者支持的有问题,则JQuery的选择器也会相应的失灵或者是出问题?
   发表时间:2008-05-19  
div不支持name属性。
0 请登录后投票
   发表时间:2008-05-19  
只是这样随便写了下,不好意思。
问题还是存在着。。。而且发现了新的情况:
我的页面中一段是用<c:foreach>进行循环的,而那部分刚好也就是要绑定事件的部分,结果,IE虽然绑定上了,但是里面$("div.sightRight")这些都是没有取到。。。但是FF却都能取到。。。如果我将这部分写成静态的,则不会有问题了。。。
0 请登录后投票
   发表时间:2008-05-19  
绝对没问题。你没有把你遇到的问题描述清楚。请写个小例子
0 请登录后投票
   发表时间:2008-05-19  
问题解决了,原因如下:
<div class="rightSight
<c:if text="${isLove == 1}>
    <c:out value="fav" />
</c:if>
"/>
</div>

代码这样写的后果是,IE中用JQuery的属性选择器,属性后面会有很长的空格,其不会自动去掉空格,因此无法匹配.而FF则会自动帮助去掉空格解决办法是:
<div class="rightSight<c:if text="${isLove == 1}><c:out value=" fav" /></c:if>"/>
</div>

这样,获得的属性将没有空格.

浪费大家这麽多时间实在是对不起,也再次感谢大家的帮助.
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics