Javascript 如果存在视口,为什么jQuery动画在移动设备上不起作用?
所以下面的内容可以在我的桌面网页上正常工作,但不会在手机上出现任何滚动Javascript 如果存在视口,为什么jQuery动画在移动设备上不起作用?,javascript,jquery,css,mobile,Javascript,Jquery,Css,Mobile,所以下面的内容可以在我的桌面网页上正常工作,但不会在手机上出现任何滚动 $("HTML, BODY").animate({ scrollTop: 500 }, 1000); 这似乎表明它与移动设备有关,不是在身体上滚动,而是在视口上滚动。如果我从我的页面中删除这个viewport标签,那么卷轴就可以工作了 <meta name="viewport" content="width=device-width, initial-scale=1, maximum-sca
$("HTML, BODY").animate({
scrollTop: 500
}, 1000);
这似乎表明它与移动设备有关,不是在身体上滚动,而是在视口上滚动。如果我从我的页面中删除这个viewport标签,那么卷轴就可以工作了
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
但是我看到过有viewport标签的页面,但是动画可以正常工作,那么有什么好处呢?在我的例子中,当窗口宽度低于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
}
var page=$('#myAnchor');//目标页
var速度=750;//动画(ms)
if($(window).width()我遇到了与他描述的相同的问题。我使用的是:
$(".buttonTop").click(function() {
$('html, body').animate({
scrollTop: $(".bestline").offset().top},
1300);
});
正如他所描述的,当删除
事情开始起作用了。它与移动设备或浏览器无关,因为它也发生在Chrome控制台上。很难告诉你为什么没有更多的上下文。我一直使用jQuery动画,并且在移动设备上从来没有出现过问题,viewport
标记与否。但是,你链接的资源说要使用$(“body”)
而不是$(“html,body”)
-您尝试过这个吗?您使用的是什么移动浏览器?