IE でこれが機能しないのはなぜですか?
$(document).ready(function(){
$(window).scrollLeft(0);
});
ありがとう
IE でこれが機能しないのはなぜですか?
$(document).ready(function(){
$(window).scrollLeft(0);
});
ありがとう
このスクリプトは必要に応じて機能するはずです
$(document).ready(function ()
{
$(window).bind("scroll", ScrollOnLoad);
// IE fix, remove scroll handler after 150ms
setTimeout(UnbindScroll, 150);
});
function ScrollOnLoad() {
UnbindScroll();
$(window).scrollLeft(0);
}
function UnbindScroll() {
$(window).unbind("scroll", ScrollOnLoad);
}
お気づきのように、IE の動作は異なります。scroll
後でもイベントをトリガーしますdocument.ready
。このスクリプトは、このイベントとscrollLeft(0)
更新後に接続されます (すべてのブラウザーで)。
複雑な部分は、ユーザーが初めてページにアクセスしたときに、新規参入者をどのように解決するかです。その後、Internet Explorer はscroll
イベントを発生しません。そして、ハンドラーはまだ実行中です (ユーザーが最初に右にスクロールすると、左にスクロールします)。
scrollLeft
手動でアンバインドする必要があります。そのため、とにかく 150 ミリ秒後にハンドラーが無制限になります。
試す
$(window).load(function(){
$('body, html').scrollLeft(0);
});
試す
$(document).ready(function(){
$('body, html').scrollLeft(0);
});