Javascript Jquery与AngularJs冲突
我刚开始调查AngularJS。在尝试同时使用Jquery和Angularjs进行测试时,出现了一个问题,Angularjs似乎以某种方式阻止了Jquery interventino 在下面的代码中:我包括一个jquery锚点击事件处理程序,它将阻止锚指向用户。然而,角度控制器外部的锚工作正常,而内部的锚没有运行 在不创建自定义指令的情况下,是否有Jquery和AngularJs html: 我使用的是angularjs 1.3和Jquery 2.1Javascript Jquery与AngularJs冲突,javascript,jquery,angularjs,conflict,Javascript,Jquery,Angularjs,Conflict,我刚开始调查AngularJS。在尝试同时使用Jquery和Angularjs进行测试时,出现了一个问题,Angularjs似乎以某种方式阻止了Jquery interventino 在下面的代码中:我包括一个jquery锚点击事件处理程序,它将阻止锚指向用户。然而,角度控制器外部的锚工作正常,而内部的锚没有运行 在不创建自定义指令的情况下,是否有Jquery和AngularJs html: 我使用的是angularjs 1.3和Jquery 2.1 非常感谢,您不需要在应用程序中包含jQuer
非常感谢,您不需要在应用程序中包含jQuery。因为它在应用程序启动时出现在应用程序中。如果您的脚本路径中没有jQuery,Angular将返回到它自己的jQuery子集实现,我们称之为jQLite
选中“不要在控制器中使用这样的jQuery代码”。您应该使用ngClick指令并将其绑定到控制器中的操作 在你看来:
<a ng-click="disable()" ng-disabled="disabled">disable</a>
这并没有复制您正试图执行的操作,但更多内容提供了一个示例,说明如何使用ngClick指令将控制器中的操作绑定到视图中的元素,以及如何使用ngDisable指令禁用元素 “在下面的代码中”-什么代码?请单击“编辑”并添加相关的JS和html。对不起,我正在尝试了解如何添加JSFIDLE链接。在代码块中粘贴代码会在提交时给我一个错误。混合angularjs和jquery是一个坏主意-尤其是你尝试这样做的方式。我建议您阅读@josh david miller关于从jquery切换到angular的精彩回复:的确,感谢您的链接。谢谢,我意识到angularjs感知的架构与普通jquery完全不同。
var app = angular.module('AngApp',[]);
app.controller('demoCrtl', ['$scope', function($scope) {
$scope.test=1;
}]);
$('a[data-disable]').on('click',function(e){e.preventDefault();console.log('ha');});
<a ng-click="disable()" ng-disabled="disabled">disable</a>
$scope.disabled = false;
$scope.disable = function () {
console.log('disable clicked');
// maybe do something else
$scope.disabled = true;
}