Jquery,变量中的多个CSS属性

时间:2016-11-12 11:46:47

标签: jquery css variables

我希望Jquery能够在变量中加倍 css 属性。这段代码不起作用:

var deco = {"text-decoration":"none"};
var bak = {"background-color":"cyan"};


$("a").css( deco , bak );

我的代码有什么问题?谢谢。尼古拉斯。

1 个答案:

答案 0 :(得分:4)

错误的是你以一种不被编写的方式调用css函数。接受对象的版本只接受一个对象。

您可以在将对象与$.extend

一起传递时将它们合并
$("a").css( $.extend( {}, deco , bak ) );

示例:

console.log("And...");
setTimeout(function() {
  var deco = {"text-decoration":"none"};
  var bak = {"background-color":"cyan"};
  $("a").css( $.extend( {}, deco , bak ) );
  console.log("...done");
}, 800);
<a href="http://example.com">Testing 1 2 3</a>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

附注:我强烈建议使用类而不是内联样式,除非你有强烈的,特定的理由不这样做。