Для назначения я обращаюсь к API Github Gist и добавляю ответ на HTML-страницу. Затем я должен разрешить пользователю «любить» один из GISTS, а затем GIST должен появиться в отдельном разделе избранных (предпочтительные GISTS должны храниться в локальном хранилище). Я могу сделать запрос, добавить информацию и сделать предпочтительные GISTs в другом разделе. ОДНАКО, списки появляются только на мгновение, а затем исчезают после нажатия на кнопку избранного. Я вижу, что список вспыхивает, а затем уходит. Вся другая (не любимая) информация GIST также исчезает, хотя она не допускается. Может ли кто-нибудь указать мне в правильном направлении? Мне не разрешено использовать JQuery. Полный код здесь: http://pastebin.com/ic0juq9nДобавление ответа API на HTML-страницу - Исчезновение
Critical код ниже: (! REQ). Невозможно создать HttpRequest ' вар GetData = функция (URL) { если { бросок; }
req.onreadystatechange = function()
{
if(this.readyState === 4)
{
if (req.status === 200)
{
console.log("It worked!!");
var info = JSON.parse(req.responseText);
for(var key in info)
{
GistList.push(info[key]);
}
}
else
{
console.log("It messed up again");
}
}
for (i = 0; i < GistList.length; i++)
{
generateGistList(GistList[i]);
}
}
req.open('GET', url);
req.send();
};
function generateGistList(Gist) {
var itemList = document.createElement('li');
var holdURL = document.createElement('div');
var holdID = document.createElement('div');
var description = document.createElement('div');
if (Gist.description === null)
{
description.innerHTML = "No description found";
}
else
{
description.innerHTML = "Description: " + Gist.description;
}
holdURL.innerHTML = "URL: " + Gist.url;
holdID.innerHTML = "ID: " + Gist.id;
itemList.appendChild(holdID);
itemList.appendChild(holdURL);
itemList.appendChild(description);
ul.appendChild(itemList);
list.appendChild(ul);
var favorite = document.createElement("button");
favorite.innerHTML = "+";
favorite.setAttribute("gistId", Gist.id);
itemList.appendChild(favorite);
favorite.onclick = function()
{
var gistId = this.getAttribute("gistId"); //saved
var toBeFavoredGist = findById(gistId);
//here you add the gist to your favorite list in the localStorage
and remove it from the gist list and add it to favorite list
addFavorite(toBeFavoredGist);
DisplayFavs();
//removeGist(toBeFavoredGist);
}
}