如何用jQuery更改背景属性?

时间:2013-06-26 15:07:50

标签: jquery css

这对我来说根本不起作用!

$("#about").mouseleave(function(){
                $("#about").css("background", 'transparent url("../resources/about.png") no-repeat top left;');
            });

我有一个div工作按钮,点击它打开一个窗口。更相关的是,点击后,通过css .mouseDown将其背景替换为较小的图像,以便给出按下按钮的印象。

但是我试图让它自动返回到更大的图像,如果你将鼠标拖出div而不释放点击。实际上,它只是保持较小的图像。这是一个边缘案例,但我想解决它。

为什么上面的代码不起作用?我试过.prop.css ....我不知道我做错了什么。

4 个答案:

答案 0 :(得分:1)

您需要使用css代替attrbackground不是元素本身的属性,但它是元素的css属性。并删除css prop值末尾的半列。

$(this).css("background", 'transparent url("../resources/about.png") no-repeat top left');

<强> Fiddle

答案 1 :(得分:1)

背景不是属性,而是css:

$("#about").mouseleave(function(){
    $(this).css('background', 'transparent url("../resources/about.png") no-repeat top left');
});

答案 2 :(得分:1)

您需要使用.css()并从您要分配的值中取出分号:

$("#about").mouseleave(function(){
     $("#about").css("background", 'transparent url("../resources/about.png") no-repeat top left');
});

答案 3 :(得分:1)

您应该删除top left个样式。它对我很有用。