在angularJs上加载url不会检测onload事件

时间:2015-02-06 09:35:19

标签: javascript jquery angularjs html5

我正在使用AngularJS Framework,我遇到了问题...... 我有一个只在窗口加载时才能工作的指令。

screensCreators.directive('createscreen', function () {
    return {
        restrict: "A",
        transclude: true,
        scope: false,
        link: function (scope, element, attrs) {

            $(window).load(function () {
                console.log(scope);

             });
        };

    };
});

当我证明刷新页面按下" F5"或按浏览器栏中的按钮,我的页面有一个指令,这些工作正常... 但是如果我从bar刷新或加载页面,在bar中写入url并加载...我的指令不起作用,因为没有输入加载事件....

为什么?

感谢

2 个答案:

答案 0 :(得分:1)

我解决了我的问题...

这很容易而且不是很优雅......

我在页面加载后需要加载此指令...并且事件"加载","后打印",......工作不正常

我的解决方案是添加 TimeOut 时间" 1" ,有了这个,当页面加载时,总是在

之后加载脚本
setTimeout(function(){....},1);

我知道这不是最好的解决方案,但它对我来说很好。 感谢

答案 1 :(得分:0)

根据您的想法,等待加载事件不是可行的方法。

通常只会在首页加载时执行加载,之后您不会重新加载页面,而是在单页应用程序中导航时执行路由更改

请参阅this related questionthe documentation for $route