我試圖刪除同一類的所有元素,但保留第一個元素。我怎樣才能達到這個角度?在Angular中刪除同一類的多個元素,但首先留下一個
var myElement = angular.element(document.querySelector('myclass'));
myElement.not(':first').remove() //removes element
這是我收到的錯誤: ionic.bundle.js:21157類型錯誤:myElement.not是不是一個函數
我試圖刪除同一類的所有元素,但保留第一個元素。我怎樣才能達到這個角度?在Angular中刪除同一類的多個元素,但首先留下一個
var myElement = angular.element(document.querySelector('myclass'));
myElement.not(':first').remove() //removes element
這是我收到的錯誤: ionic.bundle.js:21157類型錯誤:myElement.not是不是一個函數
的.not()
功能不jqLite,angular.element
定義,acording到這個docs,並沒有實現所有的jQuery選擇器和方法。
UPDATE 1
下面是一個例子。
var myElements = document.getElementsByClassName('myclass');
myElements = Array.prototype.slice.call(myElements); // convert htmlcollection to array
myElements = myElements.splice(0, 1); //removes first from working list
angular.element(myElements).remove(); //removes remaining elements from the DOM
如果轉換由document.querySelector
返回數組中的節點列表,你可以移出第一個索引值,然後就休息做.remove
。
var elements = [].slice.call(document.querySelectorAll(".myclass"));
elements.shift(); // remove first item in the array
for (var i=0; i < elements.length; i++) {
angular.element(elements[i]).remove(); // remove each element from the DOM
}
首先創建第一個元素的克隆。
first_element = myElement[0].clone
刪除集合並使用first_element。如果你使用下劃線,你也可以做如下。
_.filter(myElement, function(element,index){ return index == 0; });
'document.querySelector('。myclass')' – Neal