MutationsObserver щелкните элемент / класс - PullRequest
0 голосов
/ 04 апреля 2020

Я пытаюсь выбрать указанный элемент c в списке трансфертного рынка ... Поэтому я отредактировал указанный класс c с указанными значениями c и удалил текущий класс "selected" из первого объекта Transfermarketlistobject. Затем я добавил выбранный класс к указанному элементу c, но он не работает для ".click" элемента. Нужно смоделировать реальный клик по объекту, чтобы он заработал и показать объект на сайте

var observeTransferList = new MutationObserver(function (mutations) {
    mutations.forEach(function (mutation) {
        mutation.addedNodes.forEach(function (node) {
            if (node.nodeType === 1 && node.matches(".has-auction-data")) {
                $(node).css("height", "37");
                $(node).removeClass('selected');

                chrome.storage.sync.get(function (items) {
                    platform = items.platform;
                    percentage = items.percentage;
                    var playerData = getPlayerData(node, platform, percentage);


                    $(node).append(playerData);
                    if (playerData.colorPicked) {
                        $(node).css("backgroundColor", playerData.colorPicked); //can be "" by default, or green, yellow etc
                        //$(node).css("height", "37");
                        var price = Math.trunc(
                            parseInt(playerData.binValue.replace(/,/g, "")) / 0.949
                        );
                    }


       // -------- CODE HERE -----------//
                    if (node.matches('[style*="background-color"]')) { //works
                        $(node).css("height", "60"); //works
                        $(node).addClass('selected')//works
                        //$(node).click('selected'); // not working
                        //$(node).click(); // not working either


                    }

список объектов перевода выглядит следующим образом: Trasnferlist

Если какие-либо вопросы просто задайте, пожалуйста:)

1 Ответ

1 голос
/ 04 апреля 2020

Попробуйте использовать:

$(node).trigger('click');
$(node).trigger('click', ['selected']);

Это поведение в целом одинаково во всех браузерах. Для получения более подробной информации см. this jquery do c.

...