0

ブラウザウィンドウが944px未満の場合、関数をアンロードしようとします。私はこれを書き始めます

$(window).resize(function() {
            if ($(window).width() >= '944') {
                        $(window).load(function() {
                            $('#slider').nivoSlider();
                        });
                    } else {
                        alert($(window).width());
                        if ($(window).width() <= '944') {
                        $(window).unload(function() {
                            $('#slider').nivoSlider();
                        });
                    }
            }
            });

しかし、私は立ち往生しました。ユーザーが入力し、解像度を確認し、944pxを超えてjquery関数をロードする場合は必要ですが、ブラウザーのサイズが変更されているか、解像度が944px未満の場合、関数はアンロードされます。

4

1 に答える 1

3

私はあなたの問題に対して別の解決策を持っています。ブラウザの幅が944px未満の場合、niveSliderが非表示になり、マスクが表示されるときに、ウィンドウの幅が944px未満の新しいスライダーマスク(スライダーと同様ですが、nivoSlider関数なし)を準備できます。

見てみな:

$(window).resize(function() {
    windowWidth = $(this).width();//you need to use this for changable values
    if ( windowWidth > 943) {

       $('#sliderMask').hide();
       $('#slider').show();
       $(window).load(function() {
         $('#slider').nivoSlider();
       });

    } else if ( windowWidth < 944) {

       $('#slider').hide();// hide your nivoSlider
       $('#sliderMask').show();// show your basic slider mask

    }
});

注意:現在の値を取得するには、$(this)を使用する必要があります。

これがあなたのためのjsfiddleの例です。ブラウザの開発者パネルからコンソールログを確認してください

于 2012-07-17T08:26:29.090 に答える