【问题标题】:Reset jquery after click点击后重置jquery
【发布时间】:2011-01-05 10:21:11
【问题描述】:

谁能帮帮我。

http://beibl.users32.interdns.co.uk/second.php

如果您单击中间导航中的计算机屏幕链接,他们就是我正在开发的网站,它会提醒一个弹出窗口并使用漂亮照片从 div 加载内容,这正是我想要的。

代码如下。

$("ul.second-menu a.first[rel^='prettyPhoto']").prettyPhoto({theme:'facebook'});

$("ul.second-menu a.first").click(function() {
var text = $(".inner-content").html();
var h2 = $("h2.sec-main").html();
$(".inner-content-op").append(text);
$(".header-ow h2").append(h2);
return false;
});

我的问题是,如果您关闭灯箱并重新打开它,它会再次加载内容,因此在灯箱关闭后,我会两次将 jquery 重置为初始状态。

请帮忙。

【问题讨论】:

    标签: jquery reset


    【解决方案1】:

    这样做的原因是因为您正在附加到元素。

    如果您更改附加功能,如下所示

    $(".inner-content-op").append(text);
    $(".header-ow h2").append(h2);
    

    类似于 html 函数,如下所示

    $(".inner-content-op").html(text);
    $(".header-ow h2").html(h2);
    

    它将覆盖元素内的所有 html,而不是附加到它。 这是你的结果:

    $("ul.second-menu a.first[rel^='prettyPhoto']").prettyPhoto({theme:'facebook'});
    
    $("ul.second-menu a.first").click(function() {
    var text = $(".inner-content").html();
    var h2 = $("h2.sec-main").html();
    $(".inner-content-op").html(text);
    $(".header-ow h2").html(h2);
    return false;
    });
    

    【讨论】:

    • 太棒了,我喜欢 stackoverflow 公平竞争
    【解决方案2】:

    您可以在每次单击时清空 $(".inner-content-op") 和 $(".header-ow h2") 元素,也可以使用 html() 函数代替 append() .

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-15
      • 1970-01-01
      • 2012-05-17
      • 2011-01-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多