0
我有一個遞歸SetTimeout函數,它在篩選器加載後(它們通過Ajax加載,因此在頁面加載時不會立即可用)單擊頁面上的篩選器。在SetTimeout遞歸函數(Javascript)上超出最大調用堆棧大小
$scope.clickFilter = function() {
var filter = $('.filter-item')
.find('input[value="' + $scope.activeFilter + '"]');
if (filter.length < 1) {
setTimeout($scope.clickFilter(), 1000);
} else {
$(filter).trigger("click");
}
}
然而,當過濾器需要很長的時間來加載,我得到「未捕獲的RangeError:最大調用堆棧大小超過(......)」
如何防止這種情況,並確保它運行直到完成?
您知道嗎*這是重複的... :-) –
@ T.J.Crowder早上有些時候我只是沒有處理奇怪的SO搜索。是的,這是一個課程。 – Pointy