Javascript 角度禁用自动滚动不适用于HTML5模式导航
在我的应用程序中,当页面向下滚动时,我正在更改位置散列。当带有Javascript 角度禁用自动滚动不适用于HTML5模式导航,javascript,html,angularjs,angular-ui-router,Javascript,Html,Angularjs,Angular Ui Router,在我的应用程序中,当页面向下滚动时,我正在更改位置散列。当带有id的div元素的顶部(例如section-1)出现在屏幕上时,我正在通过$location.$hash()方法更改哈希值 为了防止自动滚动浏览器行为,我使用了disableAutoScrolling。当HTML5模式被禁用时,所有模式都会按预期工作,页面不会在散列更改时自动滚动。但当我启用HTML5模式时,它会忽略disableAutoScrolling,并在位置哈希更改事件中将页面滚动到元素 下面是负责HTML5模式和自动滚动防止
id
的div
元素的顶部(例如section-1
)出现在屏幕上时,我正在通过$location.$hash()
方法更改哈希值
为了防止自动滚动浏览器行为,我使用了disableAutoScrolling
。当HTML5模式被禁用时,所有模式都会按预期工作,页面不会在散列更改时自动滚动。但当我启用HTML5模式时,它会忽略disableAutoScrolling
,并在位置哈希更改事件中将页面滚动到元素
下面是负责HTML5模式和自动滚动防止的部分代码
app.config(['$anchorScrollProvider' , '$locationProvider', function ($anchorScrollProvider, $locationProvider) {
$anchorScrollProvider.disableAutoScrolling();
$locationProvider.hashPrefix('!');
$locationProvider.html5Mode(true);
}]);
现在,我看到了唯一的解决方法-在div
ids中附加一些字符,以避免出现此滚动
Angular 1.3.8(1.3.5也有这个)+Angular ui路由器0.2.13(0.2.11也有这个)
有没有办法解决这个问题?
谢谢