.eq (i) i не определен, но работает? - PullRequest
0 голосов
/ 12 января 2019

все работает нормально, но я пытаюсь понять почему. Я анализирую элементы из RSS-ленты WordPress и добавляю их в 3 отдельных столбца div, называемых «новости». вот мой код

var urls = ['https://domain.xyz/feed1', 'https://domain.xyz/feed2','https://domain.xyz/feed3'];
$.each(urls, function(i,u){ // for each wordpress news feed url
    $.ajax(u,{
    type: "GET",
    dataType: "xml",
        success: function(xml) {
            var limit = 1;
            $(xml).find('item').each(function(index) { // for each item entry in each of the rss categories, show only 1 entry
                if (index < limit) {
                    var title = $(this).find('title').text();
                    var url = $(this).find('link').text();
                    var pubDate = $(this).find('pubDate').text();
                    var desc = $(this).find('description').text(); // converts xml description to a string
                    var parser = new DOMParser();
                    var xmlDoc = parser.parseFromString(desc, "text/html"); // convert desc into document
                    var imgURL = xmlDoc.querySelector("img"); // target the image element
                    var alt = imgURL.alt;
                    // srcset not supported in IE so use src
                    // example xml item <img width="300" height="168" src="https://news.csudh.edu/wp-content/uploads/2018/12/Professor-Karen-Wilson-300x168.jpg">
                    // eq(i) traverses news elements and select i index
                    $(".news").eq(i).html('<a href="' + url + '" class="no-dec"><img class="newsImage" src="' + imgURL.src.replace("-300x168","") + '" title="' + title + '" alt="' + alt + '"></a><div class="news-text-area"><div class="newsHeadline"><a href="' + url + '" class="no-dec">'+ title +'</a></div><a href="' + url + '" class="read-more-link">READ MORE</a></div>');
                    return;
                }
            }); //end each
        }
    });
});

Я застрял на том, почему $(".news").eq(i) работает, хотя консольный журнал возвращает i is not defined., единственное место, где я используется, это параметр вне каждой функции и нигде не определен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...