避免Jquery自我调用功能

时间:2016-04-26 13:51:08

标签: javascript jquery button

我得到了一个Jquery函数,可以同时在两个按钮之间切换,但这是编写我老板会说的代码的“脏”方式。我不想调用函数或没有传递Jquery参数,是不是有一个简单或更好的方法来编写这个函数,因为我对编程完全不熟悉? 在Jquery下面

var startStopBtn = function () {

    var startBtn = $('#timerStart');
    var stopBtn = $('#timerStop').hide();

    var Start = function () {
       startBtn.hide();
       stopBtn.show();
    };

   var Stop = function () {
       var remarks2 = $(".textArea-one").val();
       if (remarks2 !== "") {
         startBtn.show();
         stopBtn.hide();
       }
   };
   return {
      Start: Start,
      Stop: Stop
   };
}(jQuery);
jQuery('#timerStart').on('click', startStopBtn.Start);
jQuery('#timerStop').on('click', startStopBtn.Stop);

1 个答案:

答案 0 :(得分:0)

我认为代码可以通过多种方式完成,这只是其中之一。

首先你想要隐藏stopBtn,所以创建一个函数来执行此操作。在页面加载时调用该函数或创建一个函数并在页面加载时调用它。在这里,我创建了一个您应该随时调用的函数。如果您不想这样做,只需删除该功能。

然后制作两个不同的功能,当你点击" #timerStart或#timerStop。

这是我的版本,但我确信它可以改进:

    function startStopBtn(){
        $('#timerStop').hide();
    };

    $('#timerStart').on('click', function(){
        $('#timerStart').hide();
        $('#timerStop').show();
    });

    $('#timerStop').on('click', function(){
       var remarks2 = $(".textArea-one").val();
           if (remarks2 !== "") {
             $('#timerStart').show();
             $('#timerStop').hide();
           } 
    });