gpt4 book ai didi

jquery - If/else 不适用于 jQuery 中的单击事件

转载 作者:行者123 更新时间:2023-12-01 06:13:54 25 4
gpt4 key购买 nike

我是 jQuery 的初学者,想找点乐趣。我正在尝试制作一个按钮,单击该按钮将更改页面的背景,并更改按钮的文本。我只需要两种场景: - 如果按钮显示“1”,则将按钮更改为“2”,并将背景更改为黑色; - 如果按钮显示“2”,则将按钮更改为“1”,并将背景更改为白色;

我的代码适用于第一次点击,但您不能点击多次。

我做错了什么?感谢您抽出时间。

http://jsfiddle.net/6fRbM/7/

这是我的 HTML

<body>
<button id="lumiere">1</button>
</body>

这是我的脚本

$(function() {
$('#lumiere').bind('click', function(event) {
if ($('#lumiere:contains("1")')) {
$('body').css('background-color', "black")
$('#lumiere').html('2')
}
else if ($('#lumiere:contains("2")')) {
$('body').css('background-color', "white")
$('#lumiere').html('1')
}
}
);
}
);

最佳答案

你的 if 语句将始终返回 true,因为即使你的查询没有返回任何元素,它仍然会给你一个 jQuery 对象。尝试检查“length”属性:

$(function() {
$('#lumiere').bind('click', function(event) {
if ($('#lumiere:contains("1")').length) {
$('body').css('background-color', "black");
$('#lumiere').html('2');
}
else if ($('#lumiere:contains("2")').length) {
$('body').css('background-color', "white");
$('#lumiere').html('1');
}
});
});

关于jquery - If/else 不适用于 jQuery 中的单击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17368110/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com