我做了 AngularJS指令,我在我的主页上加载,我也有
JQuery 文件,我在点击alert('it works')
元素时调用<p> Click </p>
。
这是一个例子。
/*
* This is the directive
*/
outsource.directive('mydirective', function() {
return {
restrict: 'E',
link: function(scope, element, attribute) {
// Link
},
replace: true,
templateUrl: 'src/app/components/views/directive.html'
};
});
directive.html文件
<p id="clicked"> Click </p>
jquery函数
$(document).ready(function() {
$("#clicked").click(function() {
alert('it works');
});
});
这只是我真正问题的一个简单问题。我注意到angular指令的加载速度比触发警报消息的函数慢。因为我的选择器$("#clicked")
没有选择任何内容。
*我应该如何在jquery中使用angular指令?除了使用jqlite之外,解决这个jquery-angular问题的正确方法是什么? *
答案 0 :(得分:8)
拥有AngularJS时请勿使用jQuery
。
您可以使用ng-click
AngularJS绑定元素上的click
事件。
<强> HTML 强>
<p ng-click="clickHandler()">...</p>
<强>的JavaScript 强>
在控制器中
$scope.clickHandler = function() {
alert('clicked');
};
修改强>
您仍想使用jQuery
(不推荐):
$(document).on('click', "#clicked", function() {
alert('it works');
});
答案 1 :(得分:0)