【问题标题】:Problem with IE 6 7 not displaying popup where its working fine in other brwsrsIE 6 7 不显示弹出窗口的问题,它在其他浏览器中工作正常
【发布时间】:2011-02-07 05:12:52
【问题描述】:

您好,我是 javascript 新手。我发现 jquery 非常方便。所以我用它在页面上显示一个链接的弹出窗口。使用该链接可以正常打开弹出窗口。但是,当我尝试使用其他链接打开相同的弹出窗口时,它不会在 IE 6 7 8 中打开。我使用属性“this”在多个链接上实现。我用过下面是我的代码:

CSS

#box {宽度:100px;高度:100px;背景:红色;位置:绝对;顶部:0px;右:0px;显示:无;}

javascript

$(函数(){

$("#clickme",this).click(function(){

    $("#box").show();   

});

$("#close").click(function(){

    $("#box").hide();   

});

});

html

<a href="#" id="clickme">CLICKa MEa</a>&nbsp;&nbsp;<a href="#" id="clickme">CLICKa MEa</a>
关闭

【问题讨论】:

  • 在 ie8 上,您可以按 f12 进入开发者模式。尝试查看它是否捕获任何 javascript 错误并请发布,发布完整的源代码,以便我们可以看到您的弹出窗口实现或带有 id 的对象在哪里'box' 看看有没有问题。如果它不是一个答案,我很抱歉,但我不能评论这个问题,但想提供一点帮助。

标签: javascript jquery css


【解决方案1】:

避免对一页上的不同元素使用相同的 ID。使用您的 html 代码

<a href="#" id="clickme">CLICKa MEa</a>
&nbsp;&nbsp;
<a href="#" id="clickme">CLICKa MEa</a>

jquery 只返回集合中的第一个元素。使用类名而不是 id 以及何时一切正常:

<a href="#" class="clickme">CLICKa MEa</a>
&nbsp;&nbsp;
<a href="#" class="clickme">CLICKa MEa</a>

然后

$( function() {
    $( ".clickme" ).click (function() {
        $( "#box" ).show();   
    });

    $( "#close" ).click( function() {
        $( "#box" ).hide();   
    });
});

【讨论】:

  • 感谢 CoolEsh,让我看看会恢复
猜你喜欢
  • 1970-01-01
  • 2020-02-17
  • 2016-12-30
  • 1970-01-01
  • 2013-07-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多