我正在尝试使用按钮来交替使用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();
}
});
它告诉我函数没有定义,我在脚本中提前做了这些函数。
答案 0 :(得分:1)
除了代码中的一些奇怪的东西,除非你实际上忘记定义脚本所抱怨的功能,否则应该没有问题。
纠正奇怪的东西:
isEven
功能完全是多余的。return condition ? true : false
与return condition
相同。true
或false
,因此不需要if...else if
。只需检查条件是true
(或false
)并使用else
来表示相反的情况。<强>代码:强>
/* ----- 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>