我是角度和javascript的新手。
我正在使用超时功能来完成某项任务。
这里我在超时中使用了if和else条件。
如果它包含单词,我会突出显示整个URL。
如果条件为真或假,则代码不起作用。它不像checkurls
的if条件那样。完成后,它进入if条件?
我的代码有什么问题吗?
if (uploadService.getOrphans()) {
angular.forEach(uploadService.getOrphans(), function(orphan) {
var text = orphan.attributes.text;
if (first_iteration) {
$timeout(function() {
console.log($('div#htmlEditor').text());
var check = $('div#htmlEditor').find("a[href*=" + text + "]");
if (check.length > 0) {
$('div#htmlEditor').find("a[href*=" + text + "]").addClass('mark');
checkurls = true;
}
}, 0);
if (!checkurls) {
console.log("in the if of checkurl");
responseData = $scope.highlightHTML(responseData, orphan.attributes.text, false);
}
first_iteration = false;
} else {
var checkURLContain = false;
//$(document).ready(function() {
$timeout(function() {
console.log($('div#htmlEditor').text());
var isvaluepreseninurl = $('div#htmlEditor').find("a[href*=" + text + "]");
//console.log(isvaluepreseninurl);
if (isvaluepreseninurl.length > 0) {
console.log("in timeout");
$('div#htmlEditor').find("a[href*=" + text + "]").addClass('mark');
checkURLContain = true;
console.log("value of checkurls -->", checkURLContain);
}
}, 0);
//});
console.log("value of checkurls -->", checkURLContain);
if (!checkurls) {
var check = $scope.isAlreadyHighlightedOrphan(responseData, orphan.attributes.text);
if (!check) {
responseData = $scope.highlightHTML(responseData, orphan.attributes.text, false);
}
}
}
//}