我是 Jquery 的新手,在一本书中看到了这段代码。我试图了解 hideCode() 是如何执行的。
这是我对即将发生的事件顺序的理解:
- 文档被加载并准备好执行 jquery 功能。
- 单击guess_box 时,运行 checkForCode() 函数。
- hideCode() 函数运行。
它是否正确?
$(document).ready(function() {
$(".guess_box").click(checkForCode);
function getRandom(num) {
var my_num = Math.floor(Math.random() * num);
return my_num;
}
var hideCode = function() {
var numRand = getRandom(4);
$(".guess_box").each(function(index, value) {
if(numRand == index){
$(this).append("<span id='has_discount'></span>");
return false;
}
});
}
hideCode();
function checkForCode() {
var discount;
if($.contains(this, document.getElementById("has_discount"))) {
var my_num = getRandom(5);
discount = "<p>Your Discount is " + my_num + "%</p>";
} else {
discount = "<p>Sorry, no discount this time!</p>" ;
}
$(this).append(discount);
$(".guess_box").each(function() {
$(this).unbind('click');
});