Задать вопрос

Не может найти id в DOM! extensions?

Не работает вставка данных массива с сервера в DOM расширения, panel.html:
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <link rel="stylesheet" href="/main.css">
</head>
<body>
    <ul class="nav__extensions">
        <li><a id="main" href="">Главная</a></li>
        <li><a id="vk_parse" href="">vk parse</a></li>
        <li><a id="facebook_parse" href="">facebook parse</a></li>
        <li><a href="">О нас</a></li>
        <li><a href="">Контакты</a></li>
    </ul>

    <div class="items_extensions" id="items_extensions"></div>

</body>
</html>

javascript file:
window.onload = () => {
    var requestURL = "http://mvs.com/feed/ajax";
    var request = new XMLHttpRequest();
    request.open('POST', requestURL)
    request.responseType = 'json';
    request.send()
    request.onload = function() {
        var superHeroes = request.response;
        populateHeader(superHeroes);
    }

    function populateHeader(jsonObj) {
        const items = document.getElementById("items_extensions")
        if (items != null) {

            for (var key in jsonObj) {
                items.innerHTML = jsonObj[key]
                console.log(jsonObj[key])
            }
            console.log(items)
        }
    }
}


manifest.json:
{
    "name": "ParserS V1",
    "description": "ParserS v1",
    "version": "1.0",
    "manifest_version": 2,
    "browser_action" : {
        "default_popup": "panel.html",
        "default_icon": "icon.png"
    },
    "permissions": [
        "storage",
        "activeTab"
    ],
    "content_scripts": [
        {
            "matches": ["<all_urls>"],
            "js": ["background.js", "res_block.js"]
        }
    ]
}


Почему данные не вставляются в интерфейс моего расширения?
  • Вопрос задан
  • 136 просмотров
Подписаться 1 Простой 2 комментария
Пригласить эксперта
Ответы на вопрос 2
fomenkogregory
@fomenkogregory
Юниор софтварный инженер
Попробуй преобразовать жсон в объект перед тем как итерироваться по нему с помощью JSON.parse()
Ответ написан
bootd
@bootd
Гугли и ты откроешь врата знаний!
Возможно в названии id вы допустили русский символ, такое бывает.
Возможно что-то не так с разметкой. Происпектируйте элемент, точно ли его видит браузер.

P.S. Вы точно показали весь код который у вас используется или точно ли вы скопировали свой код для вставки сюда? Ибо всё вроде как правильно
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы