我想在同一页面中重定向到我的DOM的一些元素。 我使用了以下代码, JS:
$scope.scrollTo = function (id) {
$location.hash(id);
$anchorScroll();
};
HTML:
<div>
<div id="chartdiv15" class="chartdiv"></div>
<div id="chartdata15" class="chartdata"></div>
</div>
和:
<md-input-container>
<label>Menu</label>
<md-select ng-model="menu">
.....
<md-option ng-click="scrollTo('chartdiv15')">click</md-option>
</md-select>
</md-input-container>
因此,此过程使我能够指向链接(http://localhost:3000/#/graphics#chartdiv15)
它到达元素,并在一秒钟内重定向到页面顶部,好像我没有什么... 有人可以帮我解决这个问题吗? 谢谢:))
答案 0 :(得分:0)
您是否尝试过不使用$ location.hash(id);但只有$ anchorScroll(id);
根据$anchorscroll的文件:
调用时,根据HTML5规范中指定的规则,它会滚动到与指定哈希相关的元素或(如果省略)到$ location.hash()的当前值。
在我的项目中,我只使用$ anchorScroll(id),它工作得很好但当然URL没有更新。
如果您希望更新URL,也许您应该使用:
$location.hash(id);
$anchorScroll(); // <- no id here
很抱歉没有直接回答您的问题,但我不认为我们可以帮助您提供所提供的数据,如果您添加一个复制问题的plunker,建议会更容易。