使用jQuery +将类添加到元素同时发送css类参数的自定义值

问题描述:

我不知道这是否可能,但会尝试解释我需要的。使用jQuery +将类添加到元素同时发送css类参数的自定义值

我想做的事情是这样的....

CSS类未定义的变量X,Y,Z:

.r {border-radius:Xpx;-webkit-border-radius:Ypx;-moz-border-radius:Zpx;} 

然后在身体:

<div id='test'></div> 

脚本:

$("#test").addClass("r(10,10,10)") 

作为你看我有一个CSS类,但没有数字。只是变量。
我想使用jquery将此类应用于元素,并通过jQuery发送所有变量。
有没有办法做到这一点?

+0

感谢您编辑我的帖子Shadow Wizard :) – David 2011-03-27 11:25:50

+0

这是一个聪明的想法,但这不可能使用标准的CSS。这就是CSS预编译器LESS为静态CSS资源添加的内容。我不知道任何基于Javascript的解决方案来做到这一点(尽管可能有一个jQuery插件)。 – 2011-03-27 11:27:03

+0

没问题@David,这是我们角色的一部分 - 向周围的新人展示。希望代码格式现在清晰? :) – 2011-03-27 12:10:24

有趣的想法,但不幸的是不可能直接实现:CSS是即时“编译”,所以这样的CSS只是无效,不会被识别。

相反,你可以做的是有这样的代码:

$("#test").css({ "border-radius": "10px", "-webkit-border-radius": "10px", "-moz-border-radius": "10px" }); 

要在使用jQuery动态设置的CSS属性。

+0

感谢您的答案,我知道这种方法,但希望只与类名和参数值与CSS协商。无论如何感谢您的帮助。希望有些事情会在未来发生变化:) – David 2011-03-27 11:30:13

+0

干杯@大卫 - 很难相信事情会改变,但你可以为不同的情况设置不同的类,并设置适当的类,例如''(“#test”)。addClass(“r10”);'在你原来的情况下,''(“#test”)。addClass(“r5”);'当它是'5px'时代替。 :) – 2011-03-27 12:12:01

+0

感谢您的帮助,会考虑一下,我的意思是解决我的问题的最佳途径:) – David 2011-03-27 14:04:14