单击按钮到首页不适用于AngularJS路由器链接

时间:2018-04-19 16:39:35

标签: javascript angularjs angular-ui-router

在单击页脚底部的按钮后,使用AngularJS ng-include尝试登陆其他页面时遇到问题。

HTML(index.html)

<body>

<a name="top"></a>

<!-- header section -->
 <div ng-include="'views/header.html'"></div>

<!-- views section -->
<div ng-view></div>

<!-- footer section -->
<div ng-include="'views/footer.html'"></div>

</body>

HTML(footer.html)href="#!request"是加载请求页面 - 工作正常,但没有落到请求页面的顶部。

<div class="cont3">
    <div><a href="#!request" class="footer-link" id="myBtn">Request an interpreter</a></div>
</div>

的Javascript

<script type="text/javascript">
if ($('#myBtn').length) {
    var scrollTrigger = 100, 
    backToTop = function () {
        var scrollTop = $(window).scrollTop();
        if (scrollTop > scrollTrigger) {
            $('#myBtn').addClass('show');
        } else {
            $('#myBtn').removeClass('show');
        }
    };
    backToTop();
    $(window).on('scroll', function () {
        backToTop();
    });
    $('#myBtn').on('click', function (e) {
    e.preventDefault();
    $('html, body').animate({
        scrollTop: 0
    }, 100);
    });
}
</script>

1 个答案:

答案 0 :(得分:-2)

正如Randy评论的那样,你面临的主要问题不是如何进行acutoscroll,而是使用两个框架(AngularJS和jQuery)来完成类似的事情。使用Angular无法使用jQuery做的事情真的很少。

查看此帖子的答案,了解一些始终自动滚动到导航事件顶部的方法:https://stackoverflow.com/a/27430246/3877743

Googd运气好!