Jquery只在window.onload = function()中工作

时间:2016-04-27 14:29:23

标签: google-chrome angular-fullstack

我正在我的项目中使用angular-fullstack yeoman发生器。

默认包含Jquery。

<script src="bower_components/jquery/dist/jquery.js"></script>在index.html

中正确无误

奇怪的是,在我的js文件中,Jquery在这里完美地运作:

window.onload=function() {
  //my jquery code working here
    }

但是,如果我改为使用它,它根本不起作用:

$(document).ready(function() {
  // my code is not working here :(
});

从那里,我遇到了一些麻烦。当我从一个页面切换到另一个页面时,Jquery停了下来。我需要刷新页面以保持Jquery的工作。

如果我的Jquery代码在$(document).ready(function()

中,我可能没有这个问题

由于我正在使用angular-fullstack生成器,它几乎已经完成了我的项目中的所有事情,我不知道在哪里需要进行一些更改以使其工作..

有什么建议吗?非常感谢。 :)

1 个答案:

答案 0 :(得分:1)

据我所知,在AngularJS中使用jQuery并不是一个好习惯。通常,如果在你的角度项目中你需要使用jQuery,这意味着你必须创建一个自定义指令,在那里有一些逻辑,或者不太理想的选择是使用jQuery lite特性附带的angular.element

关于您的问题,请测试这是否有效:

jQuery(document).ready(function($) {
  // example $('.btn').hide();
});