【发布时间】:2015-10-03 01:16:12
【问题描述】:
我面临以下问题:
我有 2 个函数将 css 转换应用于元素(使用 jquery),彼此不知道任何内容并在不同时间调用。
但是它们都互相覆盖。
可以在here 找到一个示例。当您单击旋转链接时,翻译将被覆盖,仅应用旋转。但是我想保留这两个转换。
我认为这不是一个 jquery 错误,但我怎样才能让它工作,这样它们就不会互相覆盖?
box.css({
'-ms-transform': 'translate(50px,100px)', /* IE 9 */
'-webkit-transform': 'translate(50px,100px)', /* Safari */
'transform': 'translate(50px,100px)'
});
rotateIt.on('click', function() {
box.css({
'-ms-transform': 'rotate(45deg)', /* IE 9 */
'-webkit-transform': 'rotate(45deg)', /* Safari */
'transform': 'rotate(45deg)'
});
});
【问题讨论】:
-
您必须将这两种转换结合起来。它不是 CSS 或 jQuery 错误。也就是说,点击时您必须将其设置为
'transform': 'translate(50px,100px) rotate(45deg)'。 -
我明白我应该这样做,我的问题是我有 2 个独立的函数应用这些样式。他们没有任何联系。在这种情况下有解决方法吗?
-
@RVandersteen 你是说你不能改变功能吗?在这种情况下,没有解决办法。放弃吧。
-
好吧,我想让它们分开,因为它们会对不同的事件做出反应。我想在重新应用之前我必须将当前的转换(字符串)保留在一个变量中并附加到它