jQuery函数问题
我的简单jQ函数如下所示jQuery函数问题,jquery,jquery-animate,Jquery,Jquery Animate,我的简单jQ函数如下所示 $.fn.animateHighlight = function(highlightColor,type, duration) { var highlightBg = highlightColor || "#FFFF9C"; var animateMs = 1500; this.stop().css(type, highlightBg).delay(duration).animate({ type: "black" },
$.fn.animateHighlight = function(highlightColor,type, duration) {
var highlightBg = highlightColor || "#FFFF9C";
var animateMs = 1500;
this.stop().css(type, highlightBg).delay(duration).animate({
type: "black"
}, animateMs);
};
$("#qparamstitle").animateHighlight("red","color", 3000);
$("#params").animateHighlight("red","border-color", 3000);
像那样打电话
$.fn.animateHighlight = function(highlightColor,type, duration) {
var highlightBg = highlightColor || "#FFFF9C";
var animateMs = 1500;
this.stop().css(type, highlightBg).delay(duration).animate({
type: "black"
}, animateMs);
};
$("#qparamstitle").animateHighlight("red","color", 3000);
$("#params").animateHighlight("red","border-color", 3000);
试图使类型变为变量。除了动画之外,所有的工作都很好。我做错了什么,如何让它工作
{
type: "black"
}
这是使用“type”
键创建对象。不能将变量用作对象文本中的键
您需要首先声明变量,然后使用[]
设置值
$.fn.animateHighlight = function(highlightColor,type, duration) {
var highlightBg = highlightColor || "#FFFF9C";
var animateMs = 1500;
var animateVal = {}; // declare object
animateVal[type] = 'black'; // set `type` value
this.stop().css(type, highlightBg).delay(duration).animate(animateVal, animateMs);
};
您需要jqueryui才能,jQuery仅不支持它 此外,将选项对象传递给动画功能的方式将不起作用。您必须在函数外部创建一个对象并传递该对象:
$.fn.animateHighlight = function(highlightColor,type, duration) {
var highlightBg = highlightColor || "#FFFF9C";
var animateMs = 1500;
// create objects for the animation options
var o = {};
// using the array notation
// you can create a property of name "type"
o[type] = 'Black';
this.stop().css(type, highlightBg).delay(duration).animate(o, animateMs);
};
因此,请解释什么被破坏了,以及您预期会发生什么。另外,发布一个JSFIDLE示例将有助于人们帮助您。将鼠标悬停在向下投票箭头上,查看向下投票的一些有效原因。抱怨被否决的票数,并给这个论坛的用户打电话,可能会让你获得更多的被否决的票数。@Sparky672
type:“black”
type是可变的。它可能是边框颜色,颜色。。还有别的。Animate函数不接受变量parameter无法使用jQuery.Animate()
设置颜色动画。请参见-“所有已设置动画的属性应设置为单个数值”我是否缺少某些内容?为什么会有这些反对票?似乎是个很好的问题…哦。。似乎边框颜色不起作用。对于css,它是border color
用于动画borderColor
。我如何解决这个问题?试着理解这个解决方案<代码>边框颜色与边框颜色
一样有效,但不能将变量用作对象中的键literals@epic_syntax:边框颜色
在中工作良好。动画
(如果包含jQuery UI)。我已经将jQueryUI包含到项目中。所以你也可以推荐你的jqui解决方案。