Javascript 从ng单击调用$event上的JQuery函数
我有一个带有ng click的div,我在其中调用以下函数:Javascript 从ng单击调用$event上的JQuery函数,javascript,jquery,angularjs,Javascript,Jquery,Angularjs,我有一个带有ng click的div,我在其中调用以下函数: $scope.toggleLog = function($event){ $event.currentTarget.slideToggle() } 当我查看调试器时,$event.currentTarget指向我的div,所以看起来很好。但是,slideToggle函数未定义。我已经包括了JQuery。$event是jquery对象,currentTarget也是。那么为什么我不能在它上面调用任何与JQuery相关的函数
$scope.toggleLog = function($event){
$event.currentTarget.slideToggle()
}
当我查看调试器时,$event.currentTarget指向我的div,所以看起来很好。但是,slideToggle函数未定义。我已经包括了JQuery。$event是jquery对象,currentTarget也是。那么为什么我不能在它上面调用任何与JQuery相关的函数呢?$event.currentTarget指向的是DOM元素,而不是JQuery对象。将其包装在jQuery中,然后调用slideToggle
$event.currentTarget指向的是DOM元素,而不是jQuery对象。将其包装在jQuery中,然后调用slideToggle
而不是这条线
$event.currentTarget.slideToggle()
试着用这种方式
angular.element($event.currentTarget).slideToggle();
是angularjs中jQuery的别名
如果jQuery可用,angular.element是jQuery的别名
作用如果jQuery不可用,angular.element将委托给
Angular的jQuery的内置子集,称为jQuery lite或jqLite
而不是这条线
$event.currentTarget.slideToggle()
试着用这种方式
angular.element($event.currentTarget).slideToggle();
是angularjs中jQuery的别名
如果jQuery可用,angular.element是jQuery的别名
作用如果jQuery不可用,angular.element将委托给
Angular的jQuery的内置子集,称为jQuery lite或jqLite
谢谢,行得通!使用angular.element比将元素包装在$之间有什么优势吗?我更新了我的答案,也请访问我包含的链接以便更好地理解:d当我阅读那里的文档时,我没有看到jqLite提供的slideToggle函数,因此在您的情况下,您必须有可用的jQuery:-谢谢,这很有效!使用angular.element比将元素包装在$之间有什么优势吗?我更新了我的答案,也请访问我包含的链接以便更好地理解:d当我阅读那里的文档时,我没有看到jqLite提供的slideToggle函数,因此在您的情况下,必须提供jQuery:-