0

我正在使用本地滚动从http://demos.flesler.com/jquery/scrollTo/

现在我的问题是我必须导航到新的 html 页面。我尝试使用 test.html#section2 但它只在本地滚动。你能告诉我我做错了什么吗

<script>
 $(document).ready(function() {
$('#nav, #footer-nav').onePageNav({
    begin: function() {
    console.log('start')
    },
    end: function() {
    console.log('stop')
    },
    changeHash: true
  });
  });
 </script>

在此处输入图像描述

这是我的网站http://www.spheretekk.com/indus/ 如果您转到页脚部分并查看我的屏幕截图,我说我希望它打开一个新页面然后跳转到指定的 ID。

我设法在这里创建了一个小提琴
http://jsfiddle.net/U8v2y/

4

1 回答 1

1

您可以使用javascript函数滚动

在文档就绪函数中,通过

$(document).ready(function() {
   var hash = window.location.hash;
   scrollme(hash);
);

将这些函数添加到脚本

function scrollme(id)
{
     var scrollElem = scrollableElement('html', 'body');
     var targetOffset = $(id).offset().top;
      $(scrollElem).animate({scrollTop: targetOffset-100}, 1000, function() {

          });
}
function scrollableElement(els)
{
    for (var i = 0, argLength = arguments.length; i <argLength; i++) {
      var el = arguments[i],
          $scrollElement = $(el);
      if ($scrollElement.scrollTop()> 0) {
        return el;
      } else {
        $scrollElement.scrollTop(1);
        var isScrollable = $scrollElement.scrollTop()> 0;
        $scrollElement.scrollTop(0);
        if (isScrollable) {
          return el;
        }
      }
    }
    return [];
}
于 2013-09-17T13:07:13.540 回答