.next plus .toggle 在 IE8 中不起作用
Posted
技术标签:
【中文标题】.next plus .toggle 在 IE8 中不起作用【英文标题】:.next plus .toggle not working in IE8 【发布时间】:2013-03-25 17:10:31 【问题描述】:我正在使用 .toggle 加上 .next 来滑动/向下滑动 li,除了 IE 8-7 之外,它在所有地方都可以正常工作,这很奇怪,我想提一下,当我在我的本地PC,但上传到服务器后它不起作用。我正在使用以下html。
<ul id="search_list">
<li class="ques"><a href="javascript:void(0)">Lorem ipsum dolor malesuada.</a></li>
<li class="ans"><div class="arw"></div>Lorem ipsum dolor malesuada.</li>
<li class="ques"><a href="javascript:void(0)">Lorem ipsum dolor malesuada.</a></li>
<li class="ans"><div class="arw"></div>Lorem ipsum dolor malesuada.</li>
</ul>
我已经尝试了以下 jquery 代码。
$("#search_list li.ques").live('click', function()
$(this).next("li.ans").slideToggle("fast");
);
和
$("#search_list li.ques").toggle(function()
$(this).next('li.ans').slideDown();
, function()
$(this).next('li.ans').slideUp();
);
【问题讨论】:
您的代码在 IE 7/8 中对我来说可以正常工作:Example | jsfiddle。您是否收到任何控制台错误?另外,使用on 而不是直播; live 在 jQuery 1.7 中被弃用并在 1.9 中被删除。我也会使用event.preventDefault()
(reference) 而不是内联javascript。以下是包含这些更改的代码示例:Example.
您的两种尝试都有效。 jsfiddle.net/VKNMz jsfiddle.net/VKNMz/1 你在使用 jQuery 1.9,这两种方法都被删除了吗?如果是这样,IE8与你的问题无关。
对不起,我忘了提到一件重要的事情,当我在我的电脑上工作时它可以工作,但是当我将它上传到服务器时它不起作用。我正在使用 jquery-1.7.2
IE8 是唯一受影响的浏览器吗?还是因为它是您测试的唯一浏览器而将其放在标题中。如果它是唯一受影响的浏览器,您是否重新启动所有浏览器并再次尝试避免缓存?
@KevinB 是的 IE-8-7 是受影响的,没有任何缓存问题。
【参考方案1】:
好的,我发现了问题,我在同一页面上使用了一个插件 fastLiveFilter,我将它的功能移到了我的显示/隐藏切换脚本下面,它现在在 IE 7-8 中运行良好。
感谢你们的 cmets 伙计们。
【讨论】:
以上是关于.next plus .toggle 在 IE8 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章
为什么jquery .next和.toggle不能在这里工作
使用 webpack (@vue/cli@next) 构建时如何排除 element-plus 包(由 import CDN 替换)?
使用 webpack (@vue/cli@next) 构建时如何排除 element-plus 包(由 import CDN 替换)?