Jquery bxSlider在IE8中不工作,除非激活了开发人员工具

Jquery bxSlider在IE8中不工作,除非激活了开发人员工具,jquery,jquery-mobile,internet-explorer-8,bxslider,Jquery,Jquery Mobile,Internet Explorer 8,Bxslider,我正在尝试使用bxSlider,而IE8似乎不会合作。在本例中,图像滑块已折叠或根本不显示。。。这很难说,因为当我打开开发人员工具进行调试时,滑块突然出现,一切看起来都很好 还有一个类似的问题,其中有一个javascript错误(在另一个幻灯片放映插件中),通过打开调试控制台解决: …但IE似乎没有在我的案例中抛出任何错误,并且建议的修复不适用于我的情况。另外,我认为我的脚本中没有console.log。我尝试过添加任意数量的脚本,在页面加载时激活控制台,但没有效果 我尝试了一个旨在解决JQ

我正在尝试使用bxSlider,而IE8似乎不会合作。在本例中,图像滑块已折叠或根本不显示。。。这很难说,因为当我打开开发人员工具进行调试时,滑块突然出现,一切看起来都很好

还有一个类似的问题,其中有一个javascript错误(在另一个幻灯片放映插件中),通过打开调试控制台解决:

…但IE似乎没有在我的案例中抛出任何错误,并且建议的修复不适用于我的情况。另外,我认为我的脚本中没有console.log。我尝试过添加任意数量的脚本,在页面加载时激活控制台,但没有效果

我尝试了一个旨在解决JQuery冲突的修复程序(在另一个我还没有足够的rep链接的站点上建议),修改了bxSlider函数调用,如下所示:

    <script>// <![CDATA[
    $jQ = jQuery.noConflict();
    $jQ('#home').live('pageshow',function(){
    $jQ('.bxslider').bxSlider({
    mode: 'fade',
    auto: true,
    pager: false,
    controls:true,
    pause: 9000,
    });
    });
    // ]]>
    </script>
//
不好,开始引发其他冲突

在GitHub()上的一个问题中,有人指出IE正在bxSlider中折叠LIs,并建议添加一些CSS以给LIs一个宽度。这对我也不起作用


所以在几个小时后,我现在对这个问题一无所知。医生们,有什么建议吗?

有趣的是,今天晚上我遇到了同样的问题——在我的场景中,我能够在bx包装上设置一个固定的高度,所以

.bx-wrapper{
   height: 500px !important;
}
为我修复了它-不理想,因为我希望它是灵活的,但它在这里工作


我试着调试脚本,并将其缩小到resizeWindow->redrawSlider处理程序,这是导致显示正确的原因(不具体是开发人员工具,而是打开它们时发生的resize window事件)-时间不够了,但如果我明天有更好的解决方案,我会告诉你的。

我也有同样的问题。对我来说,解决方案不是按百分比调整滑动图像的大小,而是按像素的精确数量。例如:

<li><img src="image.jpg" style="width: 561px; height: 425px;" /></li>
  • 而不是

    <li><img src="image.jpg" style="width: 170%; height: 170%;" /></li>
    

  • 然后通过添加bootstrap的img responsive类使图像再次响应。

    我在一个站点上遇到了同样的问题,我所做的是纠正它,而不是调整浏览器的大小(这对我来说也很有效;这就是打开开发工具的本质所在),我添加了一些代码来重新加载图像(不是从缓存中)在IE8中,每次都会在每个图像的末尾添加一个任意查询。这似乎对我有用。见下文

    <div class="slide"><img src="images/your_image_name.jpg<?php if (strstr($_SERVER['HTTP_USER_AGENT'], "MSIE 8") > ""){ echo "?v=" .  time(); } ?>" ></div>
    
    ”){echo”?v=“.time();}?>”>
    
    这是一种非常粗糙的方法,但我发现它在IE8中有效-本质上它运行窗口调整,迫使BX滑块重新加载

    把它放在一个窗口加载标签内

    if ($('.bxslider').length > 0) {
    
        slider = $('.bxslider').show().bxSlider();
        slider.reloadSlider();
    
    }
    
    function fireOnResizeEvent() {
     var width, height;
    
     if (navigator.appName.indexOf("Microsoft") != -1) {
      width  = document.body.offsetWidth;
      height = document.body.offsetHeight;
     } else {
      width  = window.outerWidth;
      height = window.outerHeight;
     }
    
     window.resizeTo(width - 1, height);
     window.resizeTo(width + 1, height);
    }
    
    window.onresize = function() {
        if ($('.bxslider').length > 0) {
            slider.reloadSlider();
        }
    }
    

    谢谢@Migo。很高兴你能让它工作。不幸的是,我需要灵活使用它。不过,这是一个很好的信息……我从来没有想到过这一点,因为我正在使用虚拟机运行IE8,而且我无法调整窗口大小。这肯定会给我一些想法来尝试。如果我找到灵活的解决方案,我也会让你知道。干杯又是汉克斯!嘿@MigoFast,我发现离开页面再返回也会导致滑块出现。这提供了进一步的线索吗?嘿,谢谢@user2609980。很高兴你在这里回复,因为我还没有解决这个问题。我在使用JQM,伙计,我希望有一个
    img responsive
    类。但是除非Bootstrap中有一些后门的东西是使其工作所必需的,我应该快速创建一个。看起来它所做的只是应用
    width:100%;
    height:auto;
    。我将尝试一下,然后告诉你它是如何工作的……尽管可能需要一些时间,因为我的css3mediaquerys.js在某个点停止工作,呈现了这个一切都没有意义。@MattKristiansen我现在明白了,我可能回答了一个不同的问题:)。我有一个问题,在IE8中,高度没有以正确的方式呈现(它被拉伸了),但它确实在FireFox中呈现出了很好的高度。上面的答案解决了这一问题。如果你说它在调试时确实有效,那么可能在某个地方有一个
    控制台。log
    。你不必使用它来破坏IE。是的,@user2609980,这不是我真正的问题。不过谢谢你的其他建议。我搜索了我的脚本s表示console.log,但没有结果,您认为这足以让它停止运行吗?删除console.log为我解决了这个问题。感谢您提供的信息。