锚标签和scrollTo在移动浏览器上什么都不做

时间:2013-12-27 16:33:27

标签: javascript jquery html css iframe

我有一个像这样工作的导航栏:

<a onclick="$('body').scrollTo('#step2');" class="navLink">

OR

<a href="#step2" class="navLink">

要链接到同一页面的其他部分,请执行以下操作:

<a id="step2"></a>

我在桌面和iPhone 4s上尝试了两个版本的链接(scrollTohref#)。它工作正常。然而,其他人报告说,这些链接在他们的移动设备上什么都不做。我页面上的HTML是有效的,我已经尝试了一切来使这些链接正常工作,但有些移动浏览器拒绝识别锚点或.scrollTo()事件。

值得注意的是,我正在处理的网页位于其父网页位于其他网域的iframe中。

http://jsfiddle.net/WFGT9/

1 个答案:

答案 0 :(得分:0)

你可能应该研究一下。 Click here

 $('html,body').animate(
            {
                   scrollTop: 100,
                   scrollLeft: 200
            }, 
           800, 
           function(){
                $('html,body').clearQueue();
           }
 );

这不适用于手机

试试这个

   if (navigator.userAgent.match(/(iPod|iPhone|iPad|Android)/)) {           
   window.scrollTo(200,100) // first value for left offset, second value for top offset
   }else{
        $('html,body').animate({
            scrollTop: 100,
            scrollLeft: 200
        }, 800, function(){
            $('html,body').clearQueue();
        });
   }

原因是因为手机不知道$('html,body')。尝试将其更改为动画$(“body”)。