JQuery hide() and show() 在IE 7、8中无法使用

发布于 2022-08-28 23:10:12 字数 1003 浏览 44 评论 0

大家好,本人有一行JQuery代码在IE 7中无法使用。貌似简单的情况,但到底是哪里出了问题呢?

JS:

    $(window).load(function(){
    $("#start").click(function(){ 

        $("#start").hide();
        $("#twin_buttons_1").show();

    });
});

HTML:

<!-- start of button selection decision tree -->                    
<div class="input-group col-sm-6 col-sm-offset-4"> 
<button type="button" id="start" class="btn btn-success subscribe_button btn-publish">让我试试</button>
</div>

<div id="selection" class="input-group col-sm-8 col-sm-offset-3">

<!-- Twin 1st level buttons -->
<div id='twin_buttons_1' style='display:none;'>
    <br>
    <h2 style='font-weight:bold; color:white'>请选择一个选项:</h2>
    <button id='no_magic' class="btn btn-publish">都市生活</button>

<button id='magic' class="btn btn-publish">都市玄幻</button>

</div>

也加上了bootstrap CSS和JS。网址在www.conglinwang.com

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

素衣风尘叹 2022-09-04 23:10:12

真正的问题是JQuery版本问题。我将JQuery降级到1.2.0版本后即可正常使用。

彩扇题诗 2022-09-04 23:10:12

jquery中的hide()和show()在IE7,8中应该是不存在问题的,楼主大概是把window.onload和jquery的load搞混淆了
jquery里的load方法是用于载入远程 HTML 文件代码并插入至 DOM 中,是一个ajax请求,详情可以参考jquery手册
把js代码第一行的$(window).load替换成$(document).ready应该就可以了
jquery中$(document).ready作用类似于原生的window.onload,当然也有几点区别:

  • window.onload必须等到页面内包括图片的所有元素加载完毕后才能执行,$(document).ready()是DOM结构绘制完毕后就执行,不必等到加载完毕
  • window.onload不能同时编写多个,如果有多个window.onload方法,只会执行一个,$(document).ready()可以同时编写多个,并且都可以得到执行
  • window.onload没有简化写法,$(document).ready(function(){})可以简写成$(function(){})
并安 2022-09-04 23:10:12
$(function(){
your code here

})
夏夜暖风 2022-09-04 23:10:12

jquery 1.8之后好像就不支持ie7,8了。应该是版本问题。

我为君王 2022-09-04 23:10:12

你是不是应该先去查下jquery的load用法

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文