何百ものdiv要素を持つWebページ上で、誰かをクリックしてウィンドウをスクロール(上下)してdivが上部に表示されるようにする必要がありますビューポート。divをクリックすると最も高い視点に移動します
つまり、要素がクリックされたときにウィンドウをスクロールして、この要素がビューポートの上に表示されるようにする方法はありますか?
Can Element.scrollIntoView()はこれをどのように行いますか?
何百ものdiv要素を持つWebページ上で、誰かをクリックしてウィンドウをスクロール(上下)してdivが上部に表示されるようにする必要がありますビューポート。divをクリックすると最も高い視点に移動します
つまり、要素がクリックされたときにウィンドウをスクロールして、この要素がビューポートの上に表示されるようにする方法はありますか?
Can Element.scrollIntoView()はこれをどのように行いますか?
これは、あなたが(参照ボタンをクリックして)何をしたいです:
$("button").click(function(){
$(this).addClass("sivola");
});
.sivola {
position: fixed;
top: 0;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr><hr>
<button>130 Martin Garrix si volaaa</button>
これは彼がjQueryを使っていると仮定しています。 – DrunkDevKek
いいえ、それは同じ方法でjqueryなしで行うことができます、私はちょうど私のために速くjqueryの原因でそれを書いた^^ –
確かに。彼がこのコードを直接使用しようとした場合にそれを指摘しておきたいのですが、なぜそれがうまくいかないのか疑問に思います:) – DrunkDevKek
あなたdiv
にクラス名を割り当てます。
ワン(標準の動作)標準のCSSプロパティが含まれていますし、他の(ビューポートの上にあなたのdiv
を再配置するために使用するもの)
className {
position: fixed;
top: 0;
left: 0;
...
}
のようなものは、ただ、このクラス名を割り当てる必要がありますfixed
の位置をトリガーしたい場合は、あなたのdivに転送してください。
ドキュメントの上部を0pxに設定し、アニメーション化する必要があります。
$('scrollToTopBtn').click(function(e){
$('html, body').animate({'scrollTop':'0'});
e.preventDefault();
});
解決策を見つけました!これを実現するには、以下のJSを使用してください。 注「theOffset.top - 1」というビューポートの上部と「100」に対する相対位置であるMS
jQuery(document).ready(function($) {
$(".elementclass").click(function(){
var self = this;
setTimeout(function() {
theOffset = $(self).offset();
$('body,html').animate({ scrollTop: theOffset.top - 1 });
}, 100);
});
});
でクリックした後の遅延はあなたが 'div'に' fixed'位置を与えることができますし、それをビューポートの上部に配置します。 – abhishekkannojia