如何使用attr获取样式值

时间:2013-05-14 17:18:47

标签: jquery html css attr

我的HTML代码

 <i id="bgcolor" style="background-color: rgb(255, 146, 180)"></i>

我想使用jquery attr

获取背景颜色值

我试过的是下面的

$("#bgcolor").mouseleave(function(){
            var bodyColor = $(this).attr("style");

    $("body").css(bodyColor);



    });

但是这个输出是

background-color: rgb(255, 146, 180);

我把它添加到.css它不会工作。我如何实现这个任务?

enter image description here

5 个答案:

答案 0 :(得分:19)

查看.css:http://api.jquery.com/css/

的文档
var bodyColor = $(this).css("backgroundColor");

答案 1 :(得分:2)

这是您正在寻找的(此代码有效):

$("#bgcolor").mouseleave(function(){
    var bodyColor = $(this).attr("style");
    $("body").attr("style", bodyColor);
});

但是,您应该使用attr而不是css,所以代码将是:

$("#bgcolor").mouseleave(function(){
    var bodyColor = $(this).css("background-color");
    $("body").css("background-color", bodyColor);
});

JSFiddle

答案 2 :(得分:1)

我相信这应该可以解决问题,替换你的

$("body").css(bodyColor);

使用

$("body").attr('style', $(this).attr("style"));

这应该将样式更改为其他对象上的样式。

答案 3 :(得分:1)

您可以使用$("#bgcolor").css("backgroundColor");获取颜色。

答案 4 :(得分:0)

Demo

$("#bgcolor").mouseleave(function(){
    var bodyColor = $(this).css("background-color");
    $("body").css("background-color",bodyColor);
});
相关问题