2013-06-22 36 views
0

我試圖根據變量向幾個元素添加高度。我認爲這是正確的方法,但它是打破我的JavaScript的行。jQuery:從變量添加高度

$('#content').css('height': '+=VariableX'); 

似乎有這麼多不同的方法,我不知道什麼是正確的。我通常知道,至少對於JSON來說,每個東西都應該有「」。雖然我相信原始價值觀,但你可以放棄引號。但最終,我很樂意指向一個顯示此處語法最佳實踐的指南。很明顯,我錯了。

謝謝。

如果我的計算不正確地產生了一些東西,在這裏。它應該生成一個值,該值是調整後(瀏覽器窗口寬度/ 960px)減去瀏覽器窗口高度後的容器高度(540px)之間的差異。

var addHeight = windowH - (540 * (windowW/(960))); 

我已經添加了我的代碼的另一行,因爲我認爲它可能會因爲我訂購這種縮放效果和添加高度的方式而中斷?也許不是。不知道它是否重要。

else{ 

    $('#wrapper').css({'zoom': windowW/(960)}); 
    $('#content').css('height': '+=' VariableX); 

} 

回答

1

我將管理JQuery的外呼增量:

var VariableX = $('#content').height(); 
VariableX += 1; 
$('#content').height(VariableX); 
+0

我很困惑你的解決方案。我已經計算出這個變量,在你的例子中等於1。這只是一個價值。所以我沒有var VariableX =一些公式;然後變量+ =相同的公式? – jstacks

+0

好吧,如果你已經有了值,你可以直接將它傳遞給JQuery函數 – TGH

+0

但是我需要將它添加到現有的高度。你有什麼我相當確定的作品,如果VariableX =我的新高度,但我需要添加它。該語法如何制定? – jstacks

1

從你的問題A線:

I know that generally, at least for JSON, everything should have " " around it.

這是JavaScript中,不是JSON。 JavaScript變量周圍不應有"",否則它們被視爲字符串文字,而不是變量。

這裏你需要的是一個字符串,其中的一部分是由一個變量形成的。這包括使用+運營商連接:

$('#content').css('height', '+=' + VariableX); 

這建立了由的+=其次是VariableX內容的字符串。


你的錯誤顯露的問題:

$('#wrapper').css({'zoom': windowW/(960)}),; 

這最後一個逗號使得無效的JavaScript。這將使你的代碼工作。

$('#wrapper').css({'zoom': windowW/(960)}); 
+0

好吧,我沒有意識到。我想JSON和Javascript不分享。但我已經嘗試過,並且不起作用。我也嘗試了它的價值,無論是有和沒有引號,有和沒有'PX',但不起作用。我的控制檯說語法錯誤。 – jstacks

+0

@jstacks我最好的選擇是你JS中的其他代碼行有錯誤。 – lonesomeday

+0

Gotcha。我必須通過計算才能得到我現在公佈的變量。它不會自行破壞代碼,只有當變量被放入jQuery調用時。也許它產生的價值在你的語法中是破碎的。希望這個計算有幫助。 – jstacks