【发布时间】:2012-11-08 09:03:31
【问题描述】:
通过添加盒子按钮 (#purchase),我将盒子/物品添加到购物车。 (这需要 25 个学分)
当你点击里面的橙色 div 时,credits 也会减少 15 credits,并淡出顶部 div(因此你可以看到哪个元素已经花费了 15 个 credits。淡出只发生一次,这很好,但是当它淡出时,用户仍然可以点击 div,这会导致积分减少得超出应有的水平。
我用 .one() 尝试了一些东西,但它只适用于附加的元素之一。 谁能告诉我如何做到这一点?以及为什么。
代码 HTML
<button id="purchase">Add a box </button>
<input id="money">
<div class="container"></div>
JS
var counter = 0;
$("#money").val(250);
$('#purchase').click(function() {
if ($("#money").val() < 25) {return;}
var box = $('<div class="box"' + (counter) + '><div class="yellow"' + (counter) + '><div class="buy"' + (counter) + '></div></div></div>').appendTo('.container');
$("#money").val(Number($("#money").val()) - 25).triggerHandler('change');
});
$('#money').change(function() {
$('#purchase').prop("disabled", $(this).val() < 25);
});
$('.container').on('click', '.buy', function() {
if ($("#money").val() < 15) {return;}
$(this).fadeOut(4000, callbackFunction);
$("#money").val(Number($("#money").val()) - 15).triggerHandler('change');
});
function callbackFunction() {
alert('done');
}
【问题讨论】:
标签: javascript jquery