2012-02-19 15 views
0

http://designobvio.us/DoUs/directPro.htmljQuery固定位置スクロールフリッカー修正?

jQueryのスクリプト

$(window).scroll(function() { 
$('#nav').css('top', $(this).scrollTop() + "px"); 
}); 

HTML

<nav id="nav" class="grid_2">  
    <ul> 
    <li><a href="#"><span>↗</span>Portfolio</a></li> 
    <li><a href="#">Blog</a></li> 

    <li><a href="#">About Me</a></li> 
    <li> 
     <ul class="secondaryUL"> 
      <li><a href="#">business</a></li> 
      <li><a href="#">skills</a></li> 
      <li><a href="#">service</a></li> 
     </ul> 

    </li> 
    <li><a href="#">me</a></li> 
    <li><a href="#">contact</a></li> 
</ul>  
</nav> 

IEとChromeでちらつきを修正する方法上の任意の手掛かり...それはFFで正常に見える、テストにさえ持っサファリいけませんに。 http://designobvio.us/DoUs/directPro.html

私はjQueryを使用していますので、私はこの1つの微調整を行うためにすべてのCSSを調整する必要はありません。誰もがこれを遂行する方法についてのアイデアを持っています。

答えて

2

私はjavascriptでうまくいく方法はないと思います。ほとんどのブラウザでは、常にちらつきが発生します。 最後に試したことは、使ってみたposition:fixed.

+1

あなたは正しいと思います。笑ありがとうandy –

1

アニメートを試してみてください。多分それが助けになるでしょう。

$(window).scroll(function() { 
    $('#nav').animate({top: $(this).scrollTop()}, 100); 
}); 

私はこれをテストしていないため、動作している場合と動作しない場合があります。持続時間を100に設定しましたが、よりスムーズな効果を得るために継続時間を使用して再生することもできます。

+0

これは実際に(クロムで)はるかに良く機能したが、ブラウザの残りの部分(orginally働いた)で壊した。スライダが移動した距離を制御する方法があれば、これはトリックを行うと信じています。ああ、私はjqueryにはとても新しいです。このスクリプトでさえ、別のstackoverflowから取られました。ご協力いただきありがとうございます - –