Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/373.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 获取并设置AngularJs中元素的类_Javascript_Jquery_Html_Angularjs_Attributes - Fatal编程技术网

Javascript 获取并设置AngularJs中元素的类

Javascript 获取并设置AngularJs中元素的类,javascript,jquery,html,angularjs,attributes,Javascript,Jquery,Html,Angularjs,Attributes,我已将ng click添加到我的图标中,如下所示: <img src="images/customer_icon.png" class="customer" ng-click="processForm($event)"> 我得到的是elem.getAttribute不是函数错误。尝试将类切换到ng类时,我遇到了另一个问题:我的css文件无法识别ng类 有什么方法可以直接获取/设置class属性吗?请尝试下面的代码,而不是您的代码 var elem = obj.target.attr

我已将ng click添加到我的图标中,如下所示:

<img src="images/customer_icon.png" class="customer" ng-click="processForm($event)">
我得到的是elem.getAttribute不是函数错误。尝试将类切换到ng类时,我遇到了另一个问题:我的css文件无法识别ng类


有什么方法可以直接获取/设置class属性吗?

请尝试下面的代码,而不是您的代码

var elem = obj.target.attributes.class.value;

还有为什么不为你工作?这应该是工作,我想你可能是不匹配的CSS文件

请尝试下面的代码,而不是您的代码

var elem = obj.target.attributes.class.value;
还有为什么不为你工作?这应该是工作,我想你可能是不匹配的CSS文件

试试下面的代码片段

var-app=angular.module'myapp',[]; 应用程序控制器'mycontroller',函数$scope{ $scope.processForm=functionevent{ var元素=angular.elementevent.target; //老派 console.logOLD类:+element.attr'CLASS'; 元素。removeClass'customer'。addClassnewClass; //新类 console.lognewclass:+element.attr'CLASS'; }; }; 尝试以下代码段

var-app=angular.module'myapp',[]; 应用程序控制器'mycontroller',函数$scope{ $scope.processForm=functionevent{ var元素=angular.elementevent.target; //老派 console.logOLD类:+element.attr'CLASS'; 元素。removeClass'customer'。addClassnewClass; //新类 console.lognewclass:+element.attr'CLASS'; }; };
elem是数组,因此必须使用elem[0]:

$scope.processForm = function(obj) {
   var elem = angular.element(obj.currentTarget);// or angular.element(obj.target);
   alert("Current class value: " + elem[0].getAttribute("class"));
};

elem是数组,因此必须使用elem[0]:

$scope.processForm = function(obj) {
   var elem = angular.element(obj.currentTarget);// or angular.element(obj.target);
   alert("Current class value: " + elem[0].getAttribute("class"));
};
您可以使用本机语言,这对您有很大帮助:

div.classList.remove("foo");
div.classList.add("anotherclass");
div.classList.toggle("visible");
console.log(div.classList.contains("foo"));
您可以使用本机语言,这对您有很大帮助:

div.classList.remove("foo");
div.classList.add("anotherclass");
div.classList.toggle("visible");
console.log(div.classList.contains("foo"));