jQuery或jqlite无法处理<ng视图></ng视图>
jQuery or jqlite not working with elements inside <ng-view></ng-view>
index.html:
<div>
<p class="aaa">ppp</p>
<ng-view>
</ng-view>
</div>
general.html
<p class="bbb">pppppp</p>
javascript
var app = angular.module('StarterApp', ['ngMaterial','ngRoute','ngImgCrop']);
app.config(function($routeProvider){
$routeProvider
.when('/general',
{
templateUrl:'../view/general.html'
})
});
$(document).ready(function() {
$(".aaa").on("click",function(){
alert('clicked');
});
$(".bbb").on("click",function(){
alert('clicked');
});
});
它适用于class="aaa"的元素,但不适用于内的元素
<ng-view></ng-view>
jQuery代码在控制器之外。
文档就绪可能发生在angular完成加载之前(例如注入ng视图之前(。如果您使用require.js.这样的随需应变脚本系统,则更是如此
因此,你应该
A: 使用Angular的文档就绪版本
angular.element(document).ready(function () {
$("#aaa").on("click",function(){
alert('clicked');
});
$("#bbb").on("click",function(){
alert('clicked');
});
});
B: (角度方式(
为您想要的任何自定义元素、窗体、小部件或正在构建的w/e构建一个角度指令(对其进行分区(,以便您可以处理指令链接或编译函数,然后您可以在其中订阅元素上的事件(如锚点(并访问其事件对象。
相关文章:
- 正在使用$location.path(.)路由ng视图
- ng视图外的链接重定向到ng视图内的页面
- 带有粘性标题的角度ng视图不起作用
- 当在ng视图中加载新路由时,Tabbing(tabindex)针对错误的元素
- 停止Angular JS ng视图擦除页面
- 如何在ng视图中进行页面渲染后的平滑滚动
- angularjs-ng视图重新排列html元素
- 如果未找到或未在ng视图外工作,则为ng
- 在ng视图加载或指令加载后运行javascript
- 如何在ng视图中加载页面
- Angularjs ng视图被禁止
- AngularJS-$routeProvider和数据ng视图的问题
- AngularJS v1.13 ng视图未触发控制器渲染模板
- ng视图路由模板是否反映了ajax请求所做的更改
- 除了 ng 视图页面加载
- 以编程方式将 URL 加载到 ng 视图中
- 更改 ng 视图内容后,不会释放保留的内存
- 角度路由未填充 ng 视图
- 加载事件时的 ng 视图
- 在ng视图内引导新的桌子