Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.02.2014, 21:21
Интересующийся
Отправить личное сообщение для Wolfak Посмотреть профиль Найти все сообщения от Wolfak
 
Регистрация: 28.09.2013
Сообщений: 12

Как организовать выбор новости из списка (JavaScript + RSS or HTML парсер)
Парсирую данные с сервера с помощью HTML или RSS парсера.

У каждой записи имеется общий id для стиля CSS и уникальный идентификатор передающийся JS функции (в атрибуте class="id" или date-id="id");

Но так как эти данные загружаются с сервера или задаются в самом коде JS, то функция отслеживающая клики по этим записям для перехода с помощью WinJS.Navigation.navigate не работает.

Собственно как сделать чтобы функция по отслеживанию клика по данным загружаемом из вне в этом же JS файле работала? Пишу в Visual Studio под Windows Market.

Функция отслеживающая клики:
function ToStory(eventInfo) {
        var link = eventInfo.target;
        var storyid = link.className;
        if ((storyid == '') || (storyid == 0)) {
            WinJS.Navigation.back(10).done();
        } else {
            WinJS.Navigation.navigate("/pages/story/story.html");
        }
    }


Функция загрузки RSS данных:
function loadRemoteXhr() {

        document.getElementById("topstory").innerHTML = "";
        WinJS.xhr({ url: "ссылка на RSS" }).then(
            xhrParseXml, xhrError
            );

    }

    function xhrParseXml(result) {

        var outputArea = document.getElementById("topstory");
        var xml = result.responseXML;


        if (xml) {
            var items = xml.querySelectorAll("rss > channel > item");
            if (items) {
                var length = Math.min(10, items.length);
                for (var i = 0; i < length; i++) {
                    var link = document.createElement("li");
                    link.setAttribute("id", "tostory");
                    link.setAttribute("class", items[i].querySelector("link").textContent);
                    link.innerText = items[i].querySelector("title").textContent;
                    outputArea.appendChild(link);
                }
            } else {
                outputArea.innerHTML = "There are no items available at this time";
            }
        } else {
            outputArea.innerHTML = "Unable to retrieve data at this time. Status code: " + statusCode;
        }
    }
    function xhrError(result) {

        var statusCode = result.status;
        var outputArea = document.getElementById("topstory");
        outputArea.innerHTML = "Unable to retrieve data at this time. Status code: " + statusCode;
    }

Вызов функций:
//RSSload
loadRemoteXhr();

//Навигация
tostory.addEventListener("click", ToStory, false);

<div id="blocks">
<div id="blocktit">Популярные истории</div>
<ul id="topstory"></ul>
</div>
Ответить с цитированием
  #2 (permalink)  
Старый 23.02.2014, 21:49
Интересующийся
Отправить личное сообщение для Wolfak Посмотреть профиль Найти все сообщения от Wolfak
 
Регистрация: 28.09.2013
Сообщений: 12

Возможно проблема из-за того, что в Visual Studio нельзя давать нескольким элементам одинаковое значение id, но как тогда можно написать обработчик в название объекта которого прибавить уникальный номер? например
<div id="bl1"></div>
<div id="bl2"></div>


И обработчик
bl[i].addEventListener("click", ToStory, false);

Как так можно сделать?
Ответить с цитированием
  #3 (permalink)  
Старый 24.02.2014, 14:08
Интересующийся
Отправить личное сообщение для Wolfak Посмотреть профиль Найти все сообщения от Wolfak
 
Регистрация: 28.09.2013
Сообщений: 12

Очень нужна помощь знающего Javascript
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как то можно узнать ID HTML элемента вызвавшего JavaScript функцию? Opusel Events/DOM/Window 1 18.12.2011 18:36
Как имортировать новости RSS с другого сайта? gta Общие вопросы Javascript 5 21.03.2011 16:22
Как с помощью JavaScript сохранить какие-либо изменения в HTML документе? FirstFrost Общие вопросы Javascript 1 15.07.2010 16:23
как отделить javascript от html chippolino Общие вопросы Javascript 4 11.05.2010 09:12
Как организовать RichEdit arma Элементы интерфейса 2 18.02.2010 14:57