.append在单击时不起作用

.append not working on click

本文关键字:不起作用 单击 append      更新时间:2023-10-24

一个简单的按钮,当它被点击时,应该会创建新的<p>元素,但它不起作用,我不知道为什么,因为我已经将它与我的其他代码进行了比较。

演示

var battle = function() {
    while(monsterHP > 0){
        var playerDam = Math.floor(Math.random() * ((playerAtk - monsterAtk) + 2);
        $('#battle').append("<p>You have hit the monster for " + playerDam + " damage. The monster has " + (monsterHP - playerDam) + "HP left</p>");
        monsterHP -= playerDam;
        if(monsterHP <= 0) {
            $('#battle').append("<p>You have defeated the monster</p>");
        }
    }
}
$('#battleButton').click(function() {
    battle();
}

您的代码中有许多语法错误。如果你纠正它们(如下),那么它就可以正常工作。编写JQuery追加时,需要在参数后面加一个")"。同样,函数后面需要有一个"}"。

var playerAtk = 5;
var playerDef = 5;
var playerHP = 10;
var monsterAtk = 4;
var monsterDef = 4;
var monsterHP = 8;
var battle = function() {
    while(monsterHP > 0){
        var playerDam = Math.floor(Math.random() * ((playerAtk - monsterAtk) + 2));
        $('#battle').append("<p>You have hit the monster for " + playerDam + " damage. The monster has " + (monsterHP - playerDam) + "HP left</p>");
        monsterHP -= playerDam;
        if(monsterHP <= 0) {
            $('#battle').append("<p>You have defeated the monster</p>");
        }
    }
}
$('#battleButton').click(function() {
    battle();
});