我會建議不要從控制器操縱DOM。這是這個觀點的責任。
你應該包含像範圍內引用文字的數組:
$scope.blockquotes = [{id: 1, text: "This is a blockquote"}, {id: 2, text: "This is a blockquote"}, {id: 3, text: "This is a blockquote"}];
以及檢查當前用戶或某事已經添加了一個塊引用是上點擊執行的函數。
$scope.addBlockquote = function(userId) {
var found = false;
for(var i = 0; i < $scope.blockquotes.length; i++) {
if ($scope.blockquotes[i].id == userId) {
found = true;
break;
}
}
}
您的看法或根本HTML模板會遍歷所有的引用文字陣列,並將它們輸出這樣的:
<blockquote ng-repeat="quote in blockquotes">{{quote.text}}</blockquote>
我寧願overthink您的解決方案,也許一個數組中保存的ID的範圍和然後看看,如果你已經有了id或類似的東西,性能比解析某些id或元素的dom好得多 – Johnny000