Динамически созданные элементы DOM в расширении не отображаются для некоторых пользователей Ma c - PullRequest
0 голосов
/ 06 мая 2020

Я написал расширение Chrome для Google Meet, которое добавляет div на страницу Meet, а также включает выбор и количество изображений - см. Ссылки на расширение и репозиторий GitHub ниже: снимок экрана, показывающий рабочее расширение на Windows машина По какой-то причине выбор и изображения не отображаются для некоторых пользователей (которые, как я полагаю, используют Chrome на Ma c) ... или, возможно, изображения ненадолго появляются на экран, а затем go прочь. Экраны выглядят следующим образом: снимок экрана, показывающий недостающие элементы на MA C

Следующая функция добавляет изображения в div:

    function addElement(p, e, i, ti, cl){
        let de=document.createElement(e)
        de.id=i
        de.title=ti
        if(!!cl) de.classList.add(cl)
        if(e==='img') de.src = chrome.runtime.getURL("images/"+i+".png");
        p.appendChild(de)
    }

Когда вы проверяете код; все элементы DOM существуют, и если вы наведете курсор на атрибуты scr для тегов, изображения появятся правильно. Они просто не отображаются на экране.

В моем манифесте есть следующее: json:

"web_accessible_resources": [
        "images/*.png"
    ],

Пользователь использует последнюю версию расширения; он очистил кеш и вручную удалил переменные LocalStorage для расширения. Он также удалил и заново добавил расширение. Все безрезультатно

Ссылка на расширение: https://chrome.google.com/webstore/detail/fkdjflnaggakjamjkmimcofefhppfljd Ссылка на GitHub: https://github.com/al-caughey/Google-Meet-Attendance Есть предложения? TIA

Al

Ответы [ 2 ]

0 голосов
/ 08 июня 2020

Как оказалось, проблема заключалась в конфликте. CSS Изображения были buttons, поэтому я дал им класс с именем btn. Другое расширение, которое обычно устанавливается вместе с моим, также определило класс с таким же именем (и оно скрывало мои кнопки).

Я изменил имя класса и вуаля, вот они.

0 голосов
/ 06 мая 2020

Если они появляются на HTML, но не отображаются, это определенно проблема на стороне клиента. Поскольку это изображения, можно ли разместить их в Интернете? Если нет, похоже, что adblock фильтрует HTML в каждом конкретном случае.

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