将jQuery的foo.css('opacity','0')转换为foo.alpha = 0

时间:2014-01-15 22:48:26

标签: jquery

我有一个ActionScript背景,希望能够更轻松地设置对象的某些属性。我希望能够像这样设置对象的不透明速度:

foo.alpha = 0;

而不是

foo.css('opacity', '0')

这样的事情可能吗?

1 个答案:

答案 0 :(得分:2)

你走了:

$(function(){Object.defineProperty($.prototype, 'alpha',
    {set: function(value) {
        this.css('opacity', value);
    }});
});

在jQuery之后将它放在文档的顶部以允许您描述的语法。它可以扩展为允许其他属性以这种方式工作。我不能保证它的稳健性,但似乎确实有效。不过,我建议不要使用它。即使是经验丰富的JavaScript程序员,此代码也可能会混淆。和其他评论者一样,我同意学习新语言的风格而不是试图让它看起来像另一种语言通常是一个好主意。

这是一个小提琴:http://jsfiddle.net/acbabis/aP4L9/