0

私はこのコードを使用していますが、機能しますが、一度しか機能しません。どうして?

<script type="text/javascript">
function goToAnchor(name){
window.location.hash = name;}
</script>


<li onclick="goToAnchor('topp');"><a href="test.html" target="iframetest">Tst</a></li>
4

2 に答える 2

1

JavaScriptが必要ですか?

<li><a href="test.html#topp" target="iframetest">Tst</a><li>
于 2012-10-04T11:19:06.647 に答える
0

初めて呼び出したときに変更window.location.hashされ、指定した ID またはアンカーまでブラウザーがスクロールされます。2 回目window.location.hashは既に(または最初toppに渡したもの) に設定されており、ブラウザーが変更されていないため、スクロール位置は変更されません。goToAnchorhash

これを修正するには、さまざまな方法があります。

  1. JavaScript を使用しないでください。次のようなリンクを使用してください。<a href='#topp'>Topp</a>
  2. 関数を使用しscrollIntoViewて、対象の要素までスクロールします。

    document.getElementById('topp').scrollIntoView();
    
于 2012-10-05T11:36:27.087 に答える