因此,正如我已经与jQuery的.animate()
方法工作,我已经学会了以动画左旁你将不得不使用这样的事情:jQuery的动画“文字阴影” CSS属性
$('#thing').animate({marginLeft: 20}, 1000);
这与使用css属性不同margin-left: 20px;
我怎么能使用animate()
里面的text-shadow
属性?
因此,正如我已经与jQuery的.animate()
方法工作,我已经学会了以动画左旁你将不得不使用这样的事情:jQuery的动画“文字阴影” CSS属性
$('#thing').animate({marginLeft: 20}, 1000);
这与使用css属性不同margin-left: 20px;
我怎么能使用animate()
里面的text-shadow
属性?
CSS转换是最好的方式,因为每个支持文本阴影的常用浏览器也支持转换。
在这种情况下,您只需设置转换属性,然后使用JS或通过更改类来更改样式。
基本例如:在改进此为jQuery的http://jsfiddle.net/adZ42/1/
东张西望了一会儿,并在那里是老版本的jQuery认识到,几乎所有的解决方案,我放弃了,写这些函数主要做的伎俩为500ms的淡入或淡出:
function AddShadow(ControlID)
{
for (i = 0; i < 11; i++)
{
setTimeout('$("#' + ControlID + '").css("text-shadow", "0 0 ' + i + 'px White");', i * 50);
}
}
function RemoveShadow(ControlID)
{
for (i = 0; i < 11; i++)
{
setTimeout('$("#' + ControlID + '").css("text-shadow", "0 0 ' + (10 - i) + 'px White");', i * 50);
}
}
然后你只需像这样一个jQuery的悬停处理程序实现:
$('.class').hover(function() {AddShadow($(this).attr('id'))}, function() {RemoveShadow($(this).attr('id'))};
我不喜欢他们的唯一的事情是,如果你将鼠标悬停在对象很快就会出现闪烁现象,因为它的两个功能之间交替,但至少它总是让他们的是一个最终状态未褪。
其他原因,它的效果并不理想:
但是好的一面,它应该适用于每个JQuery版本,并且它很稳定。
看这里:http://stackoverflow.com/questions/2226906/animating-elements-of-text-shadow-with-jquery – 2011-12-20 16:47:18