1

私はこの機能を持っています

    function first_scroll() {
        document.getElementById('insert').scrollIntoView();
    }

そしてこのボタン

Button ID="finish" runat="server" Text="Finalize" OnClientClick="first_scroll()"

このボタンはいくつかのコードを実行し、このコードを実行した後にページをスクロールしたい。現在、これは特定の div まで 1 秒未満スクロールダウンし、ポストバック後に再び上部から開始されます。

これを解決するために、私は使用してみました

<% Page MaintainScrollPositionOnPostback="true" %>

しかし、これは効果がありませんでした。では、コードを実行した後にページをスクロールするにはどうすればよいでしょうか?

前もって感謝します!

4

1 に答える 1

0

まず、画像のクリック ハンドラとして関数をバインドします。

$('#someImage').click(function () {
    // Code to do scrolling happens here
});

これにより、クリック ハンドラーが で画像に適用されますid="someImage"。これをすべての画像に適用する場合は、 に置き換え'#someImage'ます'img'

実際のスクロールコードは次のとおりです。

  1. 画像のオフセットを取得します (ドキュメントに対して):

    var offset = $(this).offset(); // Contains .top and .left
    
  2. topとから 20 を引きleftます。

    offset.left -= 20;
    offset.top -= 20;
    
  3. と の scroll-top と scroll-left の CSS プロパティをアニメーション化し<body>ます<html>

    $('html, body').animate({
        scrollTop: offset.top,
        scrollLeft: offset.left
    });
    

また、jQuery.scrollToプラグインも見てください。

ここにデモがあります。

これは、このページからの繰り返しの質問です。

于 2013-10-13T06:36:04.287 に答える