2016-08-03 2 views
0

MVC Webサイトを開発していて、アンカーを使用しているのでパターンに気づいています。 jqueryを探している私は「滑らかなスクロール」が必要ないので、「スムーススクロール」は解決策ではありません。トップページから始めることなく、URLに指定されたアンカーにページを即座にロードする必要があります。私は最も基本的なjQueryの$("#").scroll()でも見てきましたが、私はまだ症状があります。ウェブページを「ジャーク」や「ジャンプ」なしでアンカー位置にロードする方法

アンカーを使用してページに移動すると、たとえばhttp://localhost:59334/Applicants/ApplicantBaseContactHistories?page=10&SelectedCampus=CRA#Pagingのようなページが表示される場合は、ページのフリッカーが0.5秒間表示されてから正しい位置にジャンプします。

Controller Actionテクニックでも、jQueryテクニックでも、最初にページを読み込んでからアンカーにジャンプするのではなく、アンカー位置でページをレンダリングする方法はありますか?ある場合はURL

で定義されたアンカーがありません:

  1. URL
  2. NULLケースで定義されたアンカーがあります:

    は、2つの可能な条件があり、明確にするために、 URLにアンカーがないと、ページが正常に上にロードされます。ただし、URLにアンカーがある場合は、そのアンカー位置でレンダリングするページが必要です。

+0

URLからハッシュを取得するにはoffest()方法、この

<div id="aboutUs"> About us content... </div> <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> <div id="section"> content... </div> 

そしてJS

$(function() { $(document).scrollTop($("#section").offset().top); }); 

のようなものを使用することができますページの読み込み、そのアンカーを持つ要素への移動...アンカーの動作の仕組みです。そこには解決策の真の豊かさがあります。 「jquery scrolling plugin」を検索し、何千ものヒットをスクロールしてください。 –

+0

[ページを読み込むときにアンカー "ジャンプ"を無効にする方法](http://stackoverflow.com/questions/3659072/how-to-disable-anchor-jump-when-loading-a-page) –

+0

重複ではありません。そして、症状は消え去っていません - この特定のカテゴリのページは、データベースクエリを持つライブサーバー上にあります。そしてそのページの "答え"は私を助けません。 –

答えて

1

あなたはこれがに起因する可能性があり、自動的に

var url = window.location.href; 
var hash = url.substring(url.indexOf('#')); 
+0

アンカーがURLにある場合、どのようにこの手法を適用しますか?私は "ハードコード"メソッドのように見える。どのアンカーがURLにあってもページをロードしたい。 –

+0

私はこれを試しました: '$(function(){ var hash = window.location.hash; $(document).scrollTop($(hash).offset()。bottom); });私はまだちらつきの効果を得ています。 –

+0

答えを更新しました。新しいコードを試してみてください。 – Halnex

関連する問題