Javascript 单击顶部页面的按钮不适用于AngularJS路由器链接
在点击页脚底部的按钮后,我试图使用AngularJS ng include登录到其他页面的顶部时遇到问题 HTML index.HTMLJavascript 单击顶部页面的按钮不适用于AngularJS路由器链接,javascript,angularjs,angular-ui-router,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&g
<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>
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>
正如Randy所评论的,您面临的主要问题不是如何使用acutoscroll,而是使用两个框架AngularJS和jQuery,这两个框架可以完成非常类似的事情。使用jQuery可以做的事情很少,这是使用Angular无法做到的 查看本文的答案,了解在导航事件中始终自动滚动到顶部的几种方法:
祝你好运 你真的应该做出选择:要么你想使用jQuery,它会比帮助更破坏你的应用程序,要么你可以使用Angular并利用所有的帮助Angular。您应该为链接使用ui sref。使用ui-router将简化您的生活。问题是您错过了/之后!我被告知删除/并且它对我有效,但只是当我单击页脚上的按钮时,它部分地落在了另一页上。我明白你关于选择“ui sref”来保留Angular应用程序的观点。我要看看这是否有效。谢谢在这种情况下,你应该阅读关于页面链接上的散列:并将其与谷歌不赞成的页面链接概念区分开来。当前版本的AngularJS(包括AngularJS)没有提倡使用Hashbang URL。
<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>