javascript - 如果我在常规语法中包含 vendor 前缀,转换是否会应用两次?

标签 javascript jquery

假设我有一个 div

<div id='box'></div>

在 javascript/jquery 中我会:

$('#box').css('transform','translateX(300px)');
$('#box').css('-webkit-transform','translateX(300px)');

https://jsfiddle.net/foreyez/7fuL77h3/

现在我可以运行其中一个(或两个)句子,它将在桌面(Chrome)上运行。但在移动设备上,尤其是 iOS 某些版本要求您有 -webkit 前缀。所以只有第二个可行。

因此,我通常在代码中包含这两个语句。这似乎有效。但我想知道这是否“不好”。因为它可能会尝试运行这两种转换,尤其是在桌面上时。我没有注意到,因为它似乎工作正常,正如你在 fiddle 上看到的那样。但也许在幕后它是糟糕的魔力或其他什么。

如果是这样更好的做法是事先确定我是否应该使用“transform”或“-webkit-transform”并只运行一个语句 - 如果是这种情况,如何执行我确定吗?注意我在这里谈论的是 javascript 代码(不是 css)。或者像我一样运行两者会更好吗?

最佳答案

你当然可以这样做

$('#box').css({
   'transform' : 'translateX(300px)',
   '-webkit-transform' : 'translateX(300px)'
});

关于javascript - 如果我在常规语法中包含 vendor 前缀,转换是否会应用两次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35233331/

相关文章:

javascript - 有没有办法将 for 循环的索引传递给按钮对象(jQueryUI-dialog)中的单击函数?

javascript - 在 Nodejs 中编辑所需/导出的变量

javascript - JavaScript 中有比 setTimeout 更好的东西吗?

jquery - 如何在不再次运行 jquery 搜索的情况下进一步过滤 jquery 元素数组?

javascript - 选择一个表单的所有子元素的方法是什么?

javascript - 使来自 jquery 函数的变量可以从其他函数访问

javascript - 如何在某些事件后加载 Angular 平移

javascript - location.reload() 是否保持当前滚动条位置?

javascript - 将动画函数作为参数传递

javascript - 链接同一页面上的另一个 html (javascript)