[英]Why does jQuery animate not work on mobile devices if viewport is present?
因此,以下內容在我的桌面版網頁上正常運行,但不會在移動版上引起任何滾動...
$("HTML, BODY").animate({
scrollTop: 500
}, 1000);
這篇文章似乎暗示它與移動設備有關,不是在身體上滾動而是在視口上滾動。 而且,如果我從頁面中刪除此視口標簽,則滾動確實起作用。
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
但是我看過存在視口標簽但動畫有效的頁面,那能給什么呢?
就我而言,當窗口寬度小於930px時,我正在使用漢堡菜單。 在此限制之下,滾動被破壞了,因為我需要使站點內容滾動而不是正文:
var page = $('#myAnchor'); // target page
var speed = 750; // animation (ms)
if ($( window ).width() <= 930 ){
$('.site-content').animate( { scrollTop: $(page).offset().top }, speed );
}
else {
$('html, body').animate( { scrollTop: $(page).offset().top }, speed, function(){//calback} ); // Go
}
我遇到了與他描述的問題相同的問題。 我正在使用這個:
$(".buttonTop").click(function() {
$('html, body').animate({
scrollTop: $(".bestline").offset().top},
1300);
});
正如他所描述的,刪除<meta name="viewport" content="width=device-width, initial-scale=1.0">
事情開始起作用。 而且它與移動設備或瀏覽器無關,因為它也在Chrome控制台中發生。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.