jQuery 链接 css 背景颜色,仅有效一次
jQuery chaining css background-color, only works once
我正在尝试将段落的背景颜色更改与 jQuery 链接起来。以下代码在第一次点击时起作用:将颜色更改为绿色,隐藏它,显示它,然后将颜色更改为黄色。
第二次点击时,颜色变为绿色,但没有其他反应。没有进一步的点击可以做任何事情。怎么了?
$( "#p1" ).click(function( event ) {
$("#p1").css("background-color","green").slideUp(2000).slideDown(2000).queue(
function() { $("#p1").css("background-color", "yellow"); }
);
});
这里不需要使用.queue
,这样就可以了:
$("#p1").click(function(event) {
$("#p1").css("background-color", "green").slideUp(2000).slideDown(2000, function() {
$("#p1").css("background-color", "yellow");
});
});
或者,使用 .clearQueue
$("#p1").click(function(event) {
$("#p1").clearQueue().css("background-color", "green").slideUp(2000).slideDown(2000).queue(
function() {
$("#p1").css("background-color", "yellow");
});
});
我正在尝试将段落的背景颜色更改与 jQuery 链接起来。以下代码在第一次点击时起作用:将颜色更改为绿色,隐藏它,显示它,然后将颜色更改为黄色。
第二次点击时,颜色变为绿色,但没有其他反应。没有进一步的点击可以做任何事情。怎么了?
$( "#p1" ).click(function( event ) {
$("#p1").css("background-color","green").slideUp(2000).slideDown(2000).queue(
function() { $("#p1").css("background-color", "yellow"); }
);
});
这里不需要使用.queue
,这样就可以了:
$("#p1").click(function(event) {
$("#p1").css("background-color", "green").slideUp(2000).slideDown(2000, function() {
$("#p1").css("background-color", "yellow");
});
});
或者,使用 .clearQueue
$("#p1").click(function(event) {
$("#p1").clearQueue().css("background-color", "green").slideUp(2000).slideDown(2000).queue(
function() {
$("#p1").css("background-color", "yellow");
});
});