按钮单击时交替使用jQuery函数

时间:2018-03-26 11:45:10

标签: jquery function button alternating

我正在尝试使用按钮来交替使用2个功能,每次点击都会执行不同的功能。这是我的代码:

var count = 0;
$("#pijlrechts").click(function() {
    count++;
    var isEven = function(someNumber) {
        return (someNumber % 2 === 0) ? true : false;
    };
    if (isEven(count) === false) {
        $firstFunction();
    } else if (isEven(count) === true) {
        $secondFunction();
    }   
});

它告诉我函数没有定义,我在脚本中提前做了这些函数。

1 个答案:

答案 0 :(得分:1)

除了代码中的一些奇怪的东西,除非你实际上忘记定义脚本所抱怨的功能,否则应该没有问题。

纠正奇怪的东西

  1. isEven功能完全是多余的。
  2. 表达式return condition ? true : falsereturn condition相同。
  3. 由于布尔值可以是truefalse,因此不需要if...else if。只需检查条件是true(或false)并使用else来表示相反的情况。
  4. <强>代码:

    /* ----- JavaScript ----- */
    var count = 0;
    
    $("#pijlrechts").click(function() {
      /* Increment the counter. */
      count++;
      
      /* Execute the correct function based on the value of the counter. */
      count % 2 ? $firstFunction() : $secondFunction();
    });
    
    /* The functions your script complains about. */
    function $firstFunction () { console.log("first") }
    function $secondFunction () { console.log("second") }
    <!----- HTML ----->
    <script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <button id = "pijlrechts">Click</button>