我有以下div
<div style="transform-origin: left top 0px; transform: translate3d(0px, -26px, 0px) scale(1);">
如您所见,transform
包含scale(1)
。更改scale
值的最佳方法是什么?
感谢您的帮助。
答案 0 :(得分:5)
当然,使用javascript。有很多方法可以做到,我使用正则表达式来做。
function changeScale(newScale){
var div = document.getElementById('theID');
var curTrans = div.style.transform;
var newScaleString = 'scale(' + newScale + ')';
var regex = /scale\([0-9|\.]*\)/;
var newTrans = curTrans.replace(regex, newScaleString);
div.style.transform = newTrans;
}
或用更少的线:
function changeScale(newScale){
var div = document.getElementById('theID');
div.style.transform = div.style.transform.replace(/scale\([0-9|\.]*\)/, 'scale(' + newScale + ')');
}
答案 1 :(得分:1)
你可以使用一个正则表达式(假设你在变量中有你的div DOM元素&#39;并且想要将比例改为2):
el.style.transform.replace(/scale(\d+)/, 'scale(2)');