Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用ngroute在小型站点上更改页面后,我的jquery切换不会';行不通_Javascript_Jquery_Html_Angularjs_Ngroute - Fatal编程技术网

Javascript 使用ngroute在小型站点上更改页面后,我的jquery切换不会';行不通

Javascript 使用ngroute在小型站点上更改页面后,我的jquery切换不会';行不通,javascript,jquery,html,angularjs,ngroute,Javascript,Jquery,Html,Angularjs,Ngroute,完整代码: 我一直在开发一个基本的AngularJS网站,最近我遇到了一个问题,在导航到另一个页面后,我无法使用jquery切换。我相信我的问题在于路由,因为如果我把它保存在index.html文件中,以及当我分开第一页并将其放入文件中时,切换就起作用了。我在网络上找不到任何类似的东西可以帮助我,这可能是因为我问的问题不正确,但在这一点上,我认为我需要寻求帮助。这可能只是我对ng路线或角度控制器的基本理解不足,如果是这样的话,请容忍我/ $(文档).ready(函数(){ $(“#SmMagC

完整代码:

我一直在开发一个基本的AngularJS网站,最近我遇到了一个问题,在导航到另一个页面后,我无法使用jquery切换。我相信我的问题在于路由,因为如果我把它保存在index.html文件中,以及当我分开第一页并将其放入文件中时,切换就起作用了。我在网络上找不到任何类似的东西可以帮助我,这可能是因为我问的问题不正确,但在这一点上,我认为我需要寻求帮助。这可能只是我对ng路线或角度控制器的基本理解不足,如果是这样的话,请容忍我/
$(文档).ready(函数(){
$(“#SmMagCld”)。单击(函数(){
$(“#SMC”)。切换(350);
});
});

请允许我转到我的其他页面,并且仍然保持功能…:(


var-app=angular.module(“myApp”[“ngRoute”]); app.config(函数($routeProvider){ $routeProvider .当(“/”时{ templateUrl:“main.html” }) .when(“/page1”{ templateUrl:“page1.html” }) .when(“/page2”{ templateUrl:“page2.html” }); }); 应用程序控制器('mainCtrl',函数($scope){ $scope.message='欢迎光临'; }); 应用控制器('page1Ctrl',功能($scope){ $scope.message='谁在第一个'; }); 应用控制器('page1Ctrl',功能($scope){ $scope.message='第二个屏幕上有什么'; });
  • 如果它是一个有角度的应用程序,你的视图应该是局部的(不应该有html或body标签)
  • 在开始之前加载jquery
  • 对于事件,您可以使用
    ng click
    、ng mouseover、ng keypress等Angularjs html事件。您可以在这些事件上编写函数,在该页面的控制器内使用jquery进行dom操作
  • onclick无法处理document.ready中jquery的图像,因为此事件只检查dom树就绪而不检查多媒体加载。 您可以通过angularjs指令或在控制器内绑定onclick绑定(在完全加载模板的情况下执行)。 下面是固定的plunker链接:

  • 您的jQuery脚本应该在Angular脚本之前。然后,Angular将拥有完整版本的jQuery。其次,您不应该像现在这样混合使用jQuery和Angular。相反,将单击处理程序添加到组件/控制器中,并使用
    ng click
    绑定它们。顺便说一句,一旦进入Angular,您就可以使用jQuery selector
    $
    但现在它是
    angular.element
    ,例如
    angular.element(“#SMC”)。单击(function(){})
    etc,它是使用ng绑定的替代方法单击模板中的元素。@ThisClark谢谢你,我会看看是否能根据你的建议得到一些有用的东西。我不知道如何用
    angular.element
    替换
    $
    ,这肯定会让我清理其中的一些内容。