我的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它不会工作。我如何实现这个任务?
答案 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);
});
答案 2 :(得分:1)
我相信这应该可以解决问题,替换你的
$("body").css(bodyColor);
使用
$("body").attr('style', $(this).attr("style"));
这应该将样式更改为其他对象上的样式。
答案 3 :(得分:1)
您可以使用$("#bgcolor").css("backgroundColor");
获取颜色。
答案 4 :(得分:0)
$("#bgcolor").mouseleave(function(){
var bodyColor = $(this).css("background-color");
$("body").css("background-color",bodyColor);
});