首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >仅IE中IE滑块与slideToggle的冲突

仅IE中IE滑块与slideToggle的冲突
EN

Stack Overflow用户
提问于 2011-12-04 23:22:54
回答 1查看 2.2K关注 0票数 0

我发现了这个jquery插件,除了IE之外,它工作得很好。

http://bxslider.com/

如果我在代码中插入If滑块,jquery幻灯片切换失败。

代码语言:javascript
运行
复制
   <div>
        <span><a href="#" class="tabbutton" id="tabbtnA">Visual</a></span>&nbsp; 
        <span><a href="#" class="tabbutton" id="tabbtnB">Keywords</a></span>
  </div>
    <div id="tabA" class="tabcontent">
        1<br />
        2<br />
        3
    </div>
    <div id="tabB" style="display: none;" class="tabcontent">
        test<br />
        test<br />
        test
    </div>
<script>

    $(document).ready(function () {
        $('#tabbtnA').click(function () {
            $('#tabA').slideToggle(400);
            $('#tabB').slideToggle(200);
        });
        $('#tabbtnB').click(function () {
            $('#tabB').slideToggle(400);
            $('#tabA').slideToggle(200);
        });
    });
</script>

有趣的是,如果我在jquery之前插入bxslider.js,在某些情况下它可以正常工作。(并不是我试过的所有页面。)

-失败--

代码语言:javascript
运行
复制
<script src="http://code.jquery.com/jquery-latest.js" type="text/javascript"></script>
<script src="http://bxslider.com/sites/default/files/jquery.bxSlider.min.js" type="text/javascript"></script>

错误- SCRIPT87:无效参数。jquery-1.6.4.js,第8602行,字符5

代码语言:javascript
运行
复制
/* here is line 8602 */   
 fx.elem.style[ fx.prop ] = (fx.prop === "width" || fx.prop === "height" ? Math.max(0, fx.now) : fx.now) + fx.unit;

-工作

代码语言:javascript
运行
复制
<script src="http://bxslider.com/sites/default/files/jquery.bxSlider.min.js" type="text/javascript"></script>
<script src="http://code.jquery.com/jquery-latest.js" type="text/javascript"></script>

有办法解决这个问题吗?

update:如果我从bxslider.js中删除这个脚本块,它似乎可以工作,尽管我不知道if滑块会发生什么。

代码语言:javascript
运行
复制
jQuery.fx.prototype.cur = function () {
        if (this.elem[this.prop] != null && (!this.elem.style || this.elem.style[this.prop] == null)) {
            return this.elem[this.prop]
        }
        var a = parseFloat(jQuery.css(this.elem, this.prop));
        return a
    }
EN

回答 1

Stack Overflow用户

发布于 2011-12-07 23:30:40

谢谢你提供的信息。我也会犯同样的错误。当我运行任何jQuery动画函数(动画、slideToggle等)时,我在IEs中得到一个脚本87错误(<9)。你是正确的,用这个块移除它可以解决冲突。删除该块的效果是,滑块将不注意和css样式,您已经应用到它的元素,并将强制它自己的jQuery。这可能会也可能不会破坏滑块为您。

例如,在我的实现中,我将bx-寻呼机(滑块控件)移动到bx窗口div内的滑块下方。为此,我需要将bx窗口div调整到更大的高度。删除冲突块后,滑块脚本将忽略我添加的高度css规则,使其更小。(对我来说,解决方案是不要在我使用jQuery的页面上使用bxSlider动画。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8379413

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档