0

jqueryで変更しようとしている属性がいくつかあります.cssが、何らかの理由でコードが機能しません。括弧に何か問題がありますか?

元の値はそのように設定されていますpadding: 40px 0 0;

上記の値を変更するjqueryは次のとおりです。

var header = $('#main'),
    padding = '40px';

$(window).scroll(function() {
    if ($(this).scrollTop() <= padding / 2) {
        header.css({
            'padding-top': -($(this).scrollTop() - padding) + "px",
            'padding-bottom': -($(this).scrollTop() - padding) + "px"
        });
4

1 に答える 1

2

次の行は、意味のある結果にはなりません

if ($(this).scrollTop() <= padding / 2) {

paddingは文字列です。何がどうなるかわかりません"40px" / 2が、javascriptが20pxになるとは思えません。パディングを整数にして、 に変更し(padding / 2) + "px"ます。

于 2013-07-01T20:20:07.070 に答える