$('#masthead').css('padding-top')
返回串,不是一個數字,所以它可能是headH
正在所附到字符串,而不是添加到其數值;
也許:
$('#masthead').css('padding-top', parseInt(mastPad, 10) + headH);
parseInt
將解析它可以找到,然後忽略其他。所以"42px"
變成42
(而使用一元+
或Number
會在px部分窒息)。
這裏是一個自包含的例子,與with
DIV,而不是複製的問題,我在Chrome的without
格:
setTimeout(function() {
var top;
var $without = $("#without");
top = $without.css("padding-top");
snippet.log("top = [" + top + "] (type: " + typeof top + ")");
$without.css("padding-top", top + 100);
var $with = $("#with");
top = parseInt($with.css("padding-top"), 10);
snippet.log("top = [" + top + "] (type: " + typeof top + ")");
$with.css("padding-top", top + 100);
snippet.log("Updated");
}, 2000);
div {
padding-top: 20px;
border: 1px solid #888;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="without">We'll update this div without <code>parseInt</code></div>
<div id="with">We'll update this div with <code>parseInt</code></div>
<!-- Script provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 -->
<script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script>
我有些吃驚「20px100 「最後是一個非常大的墊,但...
你叫這個多次?如果是這樣,則不需要存儲「原始填充」。 – epascarello 2014-11-14 15:40:22
哎呀,對不起,不知道你的意思@epascarello 我想我只是調用一次。 – DesignSubway 2014-11-14 15:41:17
它如何繼續增長?另外,您不會從值中刪除px /%/ em。 – epascarello 2014-11-14 15:41:49