0

「777」をクリックすると開くロックを作成しました。クリック回数を 9 回に制限したいのですが、どうすればよいですか?

var numberOfClicks1 = 0; 
var numberOfClicks2 = 0; 
var numberOfClicks3 = 0;

$('#clickme1').on('click', function() {
    numberOfClicks1++; 
    $('#click-counter1').html(numberOfClicks1);
})
$('#clickme2').on('click', function() {
    numberOfClicks2++;
    $('#click-counter2').html(numberOfClicks2);
})
$('#clickme3').on('click', function() {
    numberOfClicks3++;
    $('#click-counter3').html(numberOfClicks3);
})
$('#down-click1').on('click', function() {
    numberOfClicks1--;
    $('#click-counter1').html(numberOfClicks1);
})
$('#down-click2').on('click', function() {
    numberOfClicks2--;
    $('#click-counter2').html(numberOfClicks2);
})
$('#down-click3').on('click', function() {
    numberOfClicks3--;
    $('#click-counter3').html(numberOfClicks3);
})
4

4 に答える 4

0

私の推測が正しければ、数値と各フィールドの +/- を示す 3 つのフィールドがあります。基準が満たされている場合は、関数を終了できます。

$('#clickme1').on('click', function() {
    if (numberOfClicks1 >= 9) {
        return true;
    }
    numberOfClicks1++; 
    $('#click-counter1').html(numberOfClicks1);
})
于 2013-09-18T09:00:59.007 に答える
0

if() を使用するだけです。

$('#clickme1').on('click', function() {
    if(numberOfClicks1<9){
       numberOfClicks1++; 
       $('#click-counter1').html(numberOfClicks1); 
    } else {
       alert("no more clicks");
    }    
})

0以下にならないように:

$('#down-click1').on('click', function() {
    if(numberOfClicks1<0){
        numberOfClicks1--;
        $('#click-counter1').html(numberOfClicks1);
    }
})
于 2013-09-18T09:01:40.380 に答える
0

これを試して

$('[id^="clickme"]').on('click', function () {
    var id = $('#click-counter' + this.id.match(/\d+/));
    var num = parseInt(id.text());
    num == 9 ? 9 : num++;
    $(id).text(num);
    var checkLock = $('[id^=click-counter]').map(function () {
        return this.textContent
    });
    if (checkLock[0] == "7" && checkLock[1] == "7" && checkLock[2] == "7") {
        alert("opened");
    }
});

$('[id^="down-click"]').on('click', function () {
    var id = $('#click-counter' + this.id.match(/\d+/));
    var num = parseInt(id.text());
    num == 0 ? 0 : num--;
    $(id).text(num);
    var checkLock = $('[id^=click-counter]').map(function () {
        return this.textContent
    });
    if (checkLock[0] == "7" && checkLock[1] == "7" && checkLock[2] == "7") {
        alert("opened");
    }
});

デモ

于 2013-09-18T09:07:36.343 に答える
0
var numberOfClicks1 = 0;
var numberOfClicks2 = 0;
var numberOfClicks3 = 0;

$('#clickme1').on('click', function () {
    if (numberOfClicks1 < 9) {
        numberOfClicks1++;
        $('#click-counter1').html(numberOfClicks1);
    }
})
$('#clickme2').on('click', function () {
    if (numberOfClicks2 < 9) {
        numberOfClicks2++;
        $('#click-counter2').html(numberOfClicks2);
    }
})
$('#clickme3').on('click', function () {
    if (numberOfClicks3 < 9) {
        numberOfClicks3++;
        $('#click-counter3').html(numberOfClicks3);
    }
})
$('#down-click1').on('click', function () {
    if (numberOfClicks1 > 0) {
        numberOfClicks1--;
        $('#click-counter1').html(numberOfClicks1);
    }
})
$('#down-click2').on('click', function () {
    if (numberOfClicks2 > 0) {
        numberOfClicks2--;
        $('#click-counter2').html(numberOfClicks2);
    }
})
$('#down-click3').on('click', function () {
    if (numberOfClicks3 > 0) {
        numberOfClicks3--;
        $('#click-counter3').html(numberOfClicks3);
    }
})

私はあなたの質問を誤解しているようです。編集されたコードは、numberOfClicks変数を 0 ~ 9 の範囲内に制限します。

于 2013-09-18T09:00:33.730 に答える