我正在尝试将链接颜色从当前颜色更改为其他颜色。
$(window).load(function(){
$('.article-preview h1 a').hover(function(){
$(this).animate({
color: #ffffff
}, 1500);
});
});
由于某种原因,它不起作用。我正在使用jQuery color plugin。
答案 0 :(得分:13)
你需要将一个十六进制三元组包装在一个字符串中,改变它:
color: #ffffff
到此:
color: "#ffffff"
答案 1 :(得分:5)
基本问题可能是你不知道jQuery的/ JavaScript的符号,
写#ffffff
会得到 SyntaxError ,因为 SharpSign + Letters 在JS中没有任何意义。
快速解决方案:您必须将六边形颜色作为字符串传递: color: "#ffffff"
jQuery支持.css()
&的传递对象的几种不同表示法。 .animate()
方法,
让我指导你。
(border,width,...)可以用3种方式编写:
backgroundColor //DOM formatting
'backgroundColor' //DOM formatting BUT - passed as a STRING
'background-color' //CSS formatting - passed as a STRING
(#ffffff,0px,none,...)可以用3种方式编写
0 // 'pure' number - Integer (useful when pre-calculating pixels)
20.5 // - Float
'0' // number BUT passed as STRING - Integer
'20.5' // - Float
'0px' // string
'#ffffff' // - || -
'auto' // - || -
你可以 rougly 说除了像素之外的所有内容总是作为字符串传递
=>这意味着在引号中(单'
或双"
)或者你当然可以传递一个字符串变量
因此,最安全的开端方式可能是始终使用引号表示 - 键和&&值。
所有这些实际上都是使用JSON - JavaScript Object Notation
的一部分所有这些都在jQuery's .css()
method documentation
(旧版)Internet Explorers中的一些错误(请参阅.css()
和.animate()
方法的文档)
我没有展示所有字符串传递的可能性的示例,例如:
从jQuery 1.6开始,.css()接受类似于的相对值 .animate()。相对值是以+ =或 - = to开头的字符串 递增或递减当前值。例如,如果是元素 padding-left是10px,.css(“padding-left”,“+ = 15”)会导致 总填充量 - 左侧25px。
JSON对象的有效值多于数字和字符串 - boolean,array,object,null ...