从当前大小缩放图像而不是原始大小

时间:2012-03-21 15:12:08

标签: javascript jquery css scale

基本上我试图根据一个参数来缩放一个id =“room”的img,这个参数将是+1或-1(并且它是我想要缩放的常数+ -10%)

这就是我的尝试

function scalar(scaleP100){ /* scaleP100 is +1 or -1 (no  other posible value)*/
                    var addX = $('#room').width()*10*scaleP100/100;
                    var addY = $('#room').height()*10*scaleP100/100;
                    var newW = $('#room').width()+ addX;
                    var newH = $('#room').height()  + addY;
                    $('img#room').css({'width':newW,'height':newH});
                    console.log(newW +','+ newH+':'+$('img#room').length);
                    return false;
}

这是在一个mouswheel检测中,

因此它有两个阶段:原始尺寸+ 10%,原始尺寸-10%。我只是不知道为什么它没有根据当前尺寸进行缩放(而不是原始尺寸)

我做错了什么?

如果您想查看我可能无法解释的内容,请检查http://toniweb.us/m/3d/adam.html(但仅限图片外的鼠标滚轮)

由于

1 个答案:

答案 0 :(得分:1)

你有两个ID相同的元素: < div id =“room”>和< img id =“room”> 这应该有用,但我建议你让你的html更干净..

function scalar(scaleP100){ /* scaleP100 is +1 or -1 (no  other posible value)*/
    var addX = $('img#room').width()*10*scaleP100/100;
    var addY = $('img#room').height()*10*scaleP100/100;
    var newW = $('img#room').width()+ addX;
    var newH = $('img#room').height()  + addY;
    $('img#room').css({'width':newW,'height':newH});
    console.log(newW +','+ newH+':'+$('img#room').length);
    return false;
}