jQuery smooth scroll不适用于iPad和iPhone

时间:2012-09-02 10:54:34

标签: jquery iphone ios ipad

我使用了jquery平滑滚动效果,没什么花哨的......只是jQuery ...它似乎无法使用iPad或iPhone或任何其他平板电脑..网址在这里:http://teothemes.com/wp/viewpoint/

这是我用于jquery平滑滚动的代码:

jQuery(document).ready(function() {
jQuery("a[href*=#]").on('click', function() {
  if(parseInt(jQuery(this.hash).offset().top) !== parseInt(jQuery(window).scrollTop()))
    jQuery('html,body').animate({scrollTop:jQuery(this.hash).offset().top}, 1500);
});

});

如果有任何人有任何想法,我们非常感激。

3 个答案:

答案 0 :(得分:0)

你试过CSS属性-webkit-overflow-scrolling:touch;?

答案 1 :(得分:0)

我已经读过这是一个iOS 6.1问题,它似乎没有在最早版本的iOS 7中修复。没有真正简单的解决方案,所以作为一种解决方法,我正在使用{@ 3}}当检测到iPhone和iPod时,如果我发现需要用于其他设备,则会更新此帖子。

    $('html, body').stop().animate({
        'scrollTop': $target.offset().top }, 1000);
    if( /iPhone|iPod/i.test(navigator.userAgent) ) {
        Gentle_Anchors.Setup(target);
        //for iPhone & iPod 
    }

不幸的是,除非我告诉页面将视口设置为<head>中的iPhone纵向宽度(如果已检测到其中一个设备),否则我会看到一些口吃。

答案 2 :(得分:0)

&#13;
&#13;
$(document).ready(function() {

    $('.nav-wrapper ul li a').click(function(e) { 
    $('html,body').animate({ scrollTop: jQuery(this.hash).offset().top-134}, 500);
});
&#13;
&#13;
&#13;