1

ページが1024ピクセルの画面幅に達したときにボックスを左に-340ピクセル移動させようとしています。ブラウザウィンドウを広く開くと、元の状態に戻ります。私は jslint を使用して構文を修正しましたが、コード内で反応させるために何も起こっていません。ありがとう!

function move() {
var box =-340;
var pagewidth = $('body').width();

if (pagewidth>1024) {
box=pagewidth-box;
box=box+'px right';
}else {
box=pagewidth-box;
box=box+'px left';

}
$('#vt_nice_slideshow180').css('margin-left', box );

}

$(document).ready(function(){
move();
$(window).resize(move);

});  
4

4 に答える 4

0

j08691の答えは、投稿中に確認したものと同じです...

台詞

box=box+'px right'; 

box=box+'px left';

は無効です。ボックスは数値であるため、左マージンを「100px right」のような無効な css に設定しようとしています。

于 2013-01-17T15:05:24.403 に答える
0

これを試して

function move() {
    var pagewidth = $('body').width();
    var box = -340;
    box = pagewidth - box;
    if (pagewidth > 1024) {
       $('#vt_nice_slideshow180').css('margin-left', box + +'px right');
    }else{ 
       $('#vt_nice_slideshow180').css('margin-left', box + 'px left');
    }
}

ご挨拶。

于 2013-01-17T15:25:19.590 に答える
0

次のように呼び出しを変更します。

$(document).ready(function(){
    move();
});

$(window).resize(function() {
    move();
});
于 2013-01-17T15:00:34.070 に答える
0

a. 無効な CSS を使用しています。プロパティはmarginとして右または左を受け入れません。キーを操作したい場合は、そこに右または左を追加します。

b. に負の値を代入しbox、再び から減算するpagewidthため、実際には (--=+) を加算することになります

c. 追加する必要はありませんpx。これは JQuery のデフォルトであるため、整数を渡すことができます。

d. CSSメディア クエリを使用してアプローチすることをお勧めします。

于 2013-01-17T15:11:37.727 に答える