2016-03-26 10 views
1
var $sidebar = $("#sidebar"), 
       $window = $(window), 
       offset  = $sidebar.offset(), 
       topPadding = 15; 

      $window.scroll(function() { 
       if ($window.scrollTop() > offset.top) { 
        $sidebar.stop().animate({ 
         marginTop: $window.scrollTop() - offset.top + topPadding 
        }); 
       } else { 
        $sidebar.stop().animate({ 
         marginTop: 0 
        }); 
       } 
      }); 

私はこのスクリプトを使用してページをスクロールするときにスティッキーサイドバーを有効にしますが、画面サイズがデスクトップからモバイルに変わるときにサイドバーを相対位置に保ちたいとします。特定の画面サイズでのみjqueryを実行しますか?

enter image description here

ので、モバイルビューで、私はそれが自動スクロールせずに固定された相対psoitionに滞在したい場合。このように:

enter image description here

それは私が書いたスクリプトを使って正常に動作していません。何かアドバイス?

+0

コードをお手伝いしたい場合は、コードを提示する必要があります。 – sschale

答えて

2

あなたが特定の画面サイズのためのjQueryを実行する前に、あなたはあなたが条件のいくつかの並べ替えを

var w = window.innerWidth; 

を作成することができますすることができ、ウィンドウの幅を取得します。

if (window.innerWidth > 1200) // dont run jquery 
関連する問題