2012-03-21 55 views
0

基本上我試圖根據一個參數來縮放一個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(但鼠標滾輪在圖像之外唯一)

感謝

+0

對不起,但我不明白你的問題?您的演示在我的瀏覽器中正常工作。 – mddw 2012-03-21 15:28:41

+0

你在問什麼?它確實根據當前的大小進行縮放......你想知道爲什麼會有舍入誤差嗎? – Andrew 2012-03-21 15:29:27

+0

@mdi它只調整一次(更大或更小),我希望它調整每個鼠標輪的向上或向下(我想無限大小,不僅3),並記住最後尺寸重新規模(它似乎是從計算原始大小的整個時間) – 2012-03-21 15:30:31

回答

1

你有相同的ID兩個元素: < DIV ID = 「房間」 >和< IMG ID = 「房間」 > 這應該工作,但我建議你讓你的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; 
} 
+0

這很奇怪! spining插件添加相同的圖像的id給父母,沒有意識到,謝謝! – 2012-03-21 15:34:54

相關問題