更改路由后,运行一次js脚本
After Route Change, run js script once
我正在尝试实现一个系统,在路由更改后,我只想运行一次基于动画的javascript。现在发生的情况是,如果您在页面之间切换,然后返回到关于页面。涂鸦真的减慢了网站的速度,这正是我试图避免的。
app.controller("aboutController",函数($scope,$route){
$scope.$on('$routeChangeSuccess', function() {
// Just need this to run once
$('#about').particleground({
dotColor: '#666',
lineColor: '#666',
lineWidth: .3,
particleRadius: 3,
parallaxMultiplier: 3
});
});
在$routeChangeSuccess`中运行动画之前,请检查currentRoute.redirectTo
。它将阻止动画多次运行。
$scope.$on("$routeChangeSuccess", function(event, currentRoute, previousRoute){
if(!currentRoute.redirectTo) {
$('#about').particleground({
dotColor: '#666',
lineColor: '#666',
lineWidth: .3,
particleRadius: 3,
parallaxMultiplier: 3
});
}
});
它执行两次的原因是:
在您的HTML:中
<a href="#about">› About Me</a>
在href中,您只有#about
,但它必须是#/about
。
<a href="#/about">› About Me</a>
相关文章:
- 根据Angular.JS上一次的内容禁用选择
- 更改路由后,运行一次js脚本
- 我可以使用JS一次使用JSON数组中的一个字符串吗
- mongoose.js Model.remove在循环中只能工作一次
- Angular.js指令格式化程序只调用过一次,或者如何告诉ngModel表现得像watchCollection
- data th JS每页只工作一次
- 如何每 10 秒调用一次 JS 函数,然后以角度激活一个函数
- 节点 js 在启动时调用函数一次
- 您可以在节点.js上一次运行多个应用程序吗?
- 只加载一次js函数
- 如何使网页一次只能访问一次?(JS+HTML)
- 如何在不刷新页面的情况下每 10 秒在本地重新加载一次 JS 文件
- 只运行一次js文件
- 在多次激发时运行一次js函数
- 如何为可以多次加载的ajax页面处理只加载一次js
- 如何只显示一次JS警报
- 每次访问只执行一次js函数,刷新时再次执行
- 如何使用cookie只执行一次JS脚本
- 调用一次js函数后页面将冻结
- 如何在Phonegap中只加载一次js库