ドキュメントのように、ブートストラップ v3 modalがあります。
モーダルを初めて開いたとき (「デモ モデルの起動」ボタン)、垂直スクロール バーが一番上の位置にあります。下にスクロールしてモーダルで「キャンセル」をクリックすると、閉じます。大丈夫です。しかし、もう一度モーダルを開くと、すでに下にスクロールされています。そして、これは私が避けたいケースです。最上位でモーダルを開くにはどうすればよいですか?
ドキュメントのように、ブートストラップ v3 modalがあります。
モーダルを初めて開いたとき (「デモ モデルの起動」ボタン)、垂直スクロール バーが一番上の位置にあります。下にスクロールしてモーダルで「キャンセル」をクリックすると、閉じます。大丈夫です。しかし、もう一度モーダルを開くと、すでに下にスクロールされています。そして、これは私が避けたいケースです。最上位でモーダルを開くにはどうすればよいですか?
$('#my-modal').on('shown.bs.modal', function () {
$('#my-modal').scrollTop(0);
});
スクロールをリセットするには、モーダルを開いたときに発生するイベントを使用する必要があると思います。
何かのようなもの:
$('#myModal').on('shown.bs.modal', function () {
window.scrollTo(0,0);
});
ページによっては、いくつかの jQuery またはアニメーションを使用したい場合があります。
$('#myModal').on('shown.bs.modal', function () {
$('html, body').animate({
scrollTop: $("#myModal").offset().top
}, 1000);
});
モーダルの一番上の入力要素にフォーカスを設定することで解決しました:
$("#RuleDialog").on('shown.bs.modal', function() {
$('#LinkedRuleName').focus();
});
ブートストラップ 3 モーダル
$modal.off('shown.bs.modal').on('shown.bs.modal', function() {
if ($modal.scrollTop() > 0) {
$modal.scrollTop(0)
}
}