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