Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何使用attr获取样式值_Jquery_Html_Css_Attr - Fatal编程技术网

Jquery 如何使用attr获取样式值

Jquery 如何使用attr获取样式值,jquery,html,css,attr,Jquery,Html,Css,Attr,我的HTML代码如下: <i id="bgcolor" style="background-color: rgb(255, 146, 180)"></i> 但这一结果是: background-color: rgb(255, 146, 180); 现在我已经将它添加到css中,它将无法工作。我怎样才能完成这项任务 查看.css的文档: 我相信这会起作用,取代你的 $("body").css(bodyColor); 与 这会将样式更改为其他对象上的任何样式。您可以使

我的HTML代码如下:

 <i id="bgcolor" style="background-color: rgb(255, 146, 180)"></i>
但这一结果是:

background-color: rgb(255, 146, 180);
现在我已经将它添加到css中,它将无法工作。我怎样才能完成这项任务


查看.css的文档:


我相信这会起作用,取代你的

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


这会将样式更改为其他对象上的任何样式。

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

这就是您要查找的内容(此代码有效):

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

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


你想用
attr()
而不是
css()
来获取样式有什么原因吗?请参考。你会在那里得到解决方案:)是我错了,还是背景色
?@Andreas:,它们在jQuery下都是有效的/等效的。@Andreasniedermir从文档中可以看出:此外,jQuery可以同样地解释多个单词属性的CSS和DOM格式。例如,jQuery理解并返回.css({'background-color':'ife','border left':'5px solid#ccc'})和.css({backgroundColor:'ife',borderLeft:'5px solid#ccc'})的正确值。请注意,对于DOM表示法,属性名称周围的引号是可选的,但是对于CSS表示法,由于名称中的连字符,它们是必需的。“这就是我想要的答案。谢谢@dwaddell。有没有更好的事件我可以用colorpicker代替mouseleave?有没有更好的事件我可以用colorpicker代替mouseleave?有没有更好的事件我可以用colorpicker代替mouseleave?@Zenith,lol.Dilini,这取决于你需要做什么。你需要它做什么?@DiliniWasana:你可以jquery colorpicker插件。
$("body").css(bodyColor);
$("body").attr('style', $(this).attr("style"));
$("#bgcolor").mouseleave(function(){
    var bodyColor = $(this).attr("style");
    $("body").attr("style", bodyColor);
});
$("#bgcolor").mouseleave(function(){
    var bodyColor = $(this).css("background-color");
    $("body").css("background-color", bodyColor);
});
$("#bgcolor").mouseleave(function(){
    var bodyColor = $(this).css("background-color");
    $("body").css("background-color",bodyColor);
});