我需要设置一个ng click事件,以便它加载一个新页面,然后,一旦页面加载完毕,滚动到页面上的一个定位点。我已经尝试了这篇文章中提出的每一个解决方案,但我无法让它正常工作。
大多数解决方案都围绕着滚动到已经加载的页面上的锚定。我需要在加载新页面后出现滚动。
<div class="see-jobs-btn" ng-click="$event.stopPropagation();goToResultJobs(r)">See Jobs</div>
这表示“配置文件卡”中的按钮。当用户点击卡片时,它会将他们带到一个个人资料页面。但是,当他们单击按钮时,它需要将他们带到该配置文件页面的#jobs部分(因此代码中goToResultJobs(r)前面的$stopprogation())。
下面是我的goToResultJobs方法的样子。
$scope.goToResultJobs = function(result) {
var profileUrl = result.slug;
window.location = profileUrl;
};
我尝试过使用$anchorScroll
,只是将锚点硬编码到profileUrl
,但两者都不起作用。我对Angular还不太熟悉,所以我不知道我在这里遗漏了什么。
更新1:尝试使用$timeout
这是我的ResultsCtrl中的goToResultJobs
方法,当用户单击按钮时触发:
$scope.goToResultJobs = function(result) {
var url = window.location + result.slug + '#jobs';
location.replace(url);
};
加载/name#jobs
路径,该路径调用下面的ProfileCtrl:
app.controller('ProfileCtrl', ['$scope', '$http', '$timeout', '$location', '$anchorScroll',
function($scope, $http, $timeout, $location, $anchorScroll) {
if(window.location.hash) {
$timeout(function() {
console.log('TEST');
// $location.hash('jobs');
// $location.hash('jobs');
$anchorScroll();
}, 1000);
};
}]);
此设置似乎有效,因为TEST
仅在单击“作业”按钮时显示在控制台中,而在用户仅单击配置文件时不显示。我现在面临的问题是,页面开始加载,url栏中的路径更改为/name\jobs
,但在页面完成加载之前,jobs
从url中剥离。因此,当调用$anchorScroll()
时,哈希中没有可滚动到的锚标记。
在我的例子中,在路由器中使用
片段
不起作用<代码>视口滚动条
也不工作。即使他们这样做了,我还是希望保持URL的干净。所以,这就是我使用的:
(document.querySelector('.router-wrapper') as HTMLElement)?.scrollIntoView();
因此,正如所指出的,$anchorScroll
必须在页面呈现后发生,否则锚不存在。这可以使用$timeout()
来实现。
$timeout(function() {
$anchorScroll('myAnchor');
});
你可以看到这个砰的一声。确保以弹出模式查看(输出屏幕右上角的蓝色小按钮)。
问题内容: 我想让浏览器仅使用JavaScript即可将页面滚动到给定的锚点。 我在HTML代码中指定了或属性: 要么 通过导航到,我希望获得与您相同的效果。应滚动页面,使锚点位于页面可见部分的顶部附近。 问题答案: 完全不需要jQuery!
问题内容: 我有一个网页,当向下滚动页面直到每个项目都被加载时,它会不断加载新项目。 我正在使用Java中的Selenium,需要向下滚动到页面底部才能加载所有内容。 我尝试了几种不同的选项,例如滚动到页面底部的元素: 不过,这只会向下滚动一次,然后网页会继续加载。 我也尝试过这种方法,该方法也只能向下滚动一次,因为它只考虑了浏览器的高度。 非常感谢您的帮助。 问题答案: 我将为此提供Python
我有一个网页,不断加载新项目时,向下滚动页面,直到每个项目都加载。 我正在使用Java中的Selenium,需要向下滚动到页面底部才能加载所有内容。 我尝试了几种不同的选项,比如滚动到页面底部的某个元素: 这只是向下滚动一次,然后网页继续加载。 我也尝试过这种方法,它也只向下滚动一次,因为它只考虑了浏览器的高度。 任何帮助都非常感谢。
问题内容: 我的页面上有一个div: 如何使div滚动到div的底部?不是页面,只有DIV。 问题答案: 此处的其他解决方案实际上不适用于内容很多的div -它“最大化”向下滚动到div的高度(而不是div 内容 的高度)。因此,它们将起作用,除非您在其内容中具有div高度的两倍以上。 这是正确的版本: 或jQuery 1.6+版本: 或动画:
我需要一些帮助如何保持保持当前锚链接活动后刷新页面。实际上,我有这个垂直的navbar菜单(http://prntscr.com/fz9yct),默认情况下,我将类active添加到中,所以当我们打开页面时,navbar看起来就像您在屏幕截图中看到的那样。 当我滚动,或单击任何其他navbar列表项,一切工作良好,平滑滚动到适当的部分,并删除类活动从上一个锚链接,并添加到适当的。 问题是当我刷新p
本文向大家介绍js实现滚动条滚动到页面底部继续加载,包括了js实现滚动条滚动到页面底部继续加载的使用技巧和注意事项,需要的朋友参考一下 这个实例应该说可以很简单,直接使用jQuery的方法来处理也是可以的。但本文底层使用原生的js来处理,遇到一些小知识点可以分析一下也算有所得。 原理很简单,就是为window添加一个scroll事件,浏览器每次触发scroll事件时判断是否滚动到了浏览器底部,如果