简单的jQuery点击事件问题

时间:2013-10-16 23:32:49

标签: javascript jquery

我正在使用一个简单的jQuery内容面板切换器,我正在尝试添加一个关闭按钮。关闭按钮正在工作,但在使用关闭按钮后,我无法再次重新打开面板。面板切换器插件的代码如下:

jcps.fader = function(speed, target, panel) {
jcps.show(target, panel);
if (panel == null) {panel = ''};
$('.switcher' + panel).click(function() {
    var _contentId = '#' + $(this).attr('id') + '-content';
    var _content = $(_contentId).html();
    if (speed == 0) {
        $(target).html(_content);
    }
    else {  
        $(target).fadeToggle(speed, function(){$(this).html(_content);}).fadeToggle(speed);
    }
});
};

以下是我在HTML页面中的调用,我已将click事件添加到:

    $(document).ready(function() {
       jcps.fader(300, '#switcher-panel');
         $(".close").live('click',function(){
         $(".content").fadeOut("slow");
         });
    });

这一切都适用于关闭内容面板但我无法在单击关闭后再次打开面板。

1 个答案:

答案 0 :(得分:0)

  • 创建一个超出这两个函数范围的变量。
  • 默认情况下将其设置为false。在关闭时将其设置为true
  • 为true / false创建一个If条件(在onClick代码中),让它在每个分支中运行close / open代码

这是否适用/有意义?

编辑 -

 $(document).ready(function() {
   jcps.fader(300, '#switcher-panel');
     $(".close").live('click',function(){
     if (Clicked == true){
         //run jquery code to hide
     } else {
         //run jquery code to show
     }
});