使用变量在javaScript中设置样式

时间:2013-02-03 18:34:43

标签: javascript css

function Scale(){
    X = innerWidth / 1024;
    Y = innerHeight / 768;

    Z = document.getElementById("IFM");
    Z.style.transform = "scale(X, Y)";
}

我的代码有问题。我不能在规模上使用变量!
该怎么办?

4 个答案:

答案 0 :(得分:2)

JavaScript没有内联字符串变量。您所能做的就是连接字符串:

Z.style.transform = "scale("+X+", "+Y+")";

数字将隐式转换为字符串。

您也可以使用一些自定义sprintf-like格式或替换方法,但通常与+的连接更简单。

答案 1 :(得分:1)

您可以使用 concats / plus 构建字符串,也可以使用String.prototype.replace

Z.style.transform = "scale(" + X + "," + Y + ")";

或使用像

这样的帮手
String.prototype.sFormat = function _simpleFormat( map ) {
    var myString    = this.toString(),
        args        = map instanceof Array ? map : Array.prototype.slice.call( arguments );

    while( ~myString.indexOf( '%r' ) ) {
        myString = myString.replace( '%r', args.shift() );
    }

    return myString;
};

..然后像

一样
Z.style.transform = "scale(%r, %r)".sFormat(X,Y);

答案 2 :(得分:0)

将该行更改为:

Z.style.transform = "scale(" + X +", "+ Y + ")";

答案 3 :(得分:0)

尝试这种方式“缩放(”+ X +“,”+ Y +“)”;