如何使用-moz-transform永久更改css元素?

时间:2011-06-06 20:24:36

标签: javascript jquery css3

        var transform = ['scale(' + scale + ')'];
        $.merge(transform, ['rotate(' + rotate + 'deg)']);
        $(this).css(-moz-transform, transform.join(' '));

这个代码块在生成事件时执行,新的缩放和旋转被添加到css元素,但是每当再次生成相同的事件时,css元素将自身重置为原始大小和位置。执行转换在第二次重置之后。我想消除元素重置为原始大小和位置。如何在事件被触发时第一次使更改成为永久更改,并在事件第二次触发时构建它? 请提前帮助

1 个答案:

答案 0 :(得分:0)

此代码没有任何问题,但请记住,您以绝对值设置scalerotate,而不是相对于其“初始”状态。

因此,每次执行此代码时,元素的-moz-transform属性都将被覆盖。如果您想根据其当前状态进行旋转和缩放,则必须跟踪scalerotate值并根据需要进行调整。例如,如果此代码处于循环中,您可以执行rotate=rotate+5;或类似的操作。

您还可以使用($this).css('-moz-transform')从CSS请求这些属性,解析该属性以获取所需的值,并相应地更新scalerotate