jQuery: получить элементы вроде inspect вместо исходного кода - PullRequest
1 голос
/ 23 сентября 2019

Я строю одно расширение Chrome для сбора средств от администратора BigCommerce.Но администратор BigCommerce, похоже, построен на angular (я не знаю, как работает angular), и я НЕ могу получить элемент кнопки захвата из исходного кода, который динамически добавляется угловым iframe, таким как ajax.

<iframe id="content-iframe" class="cp-iframe" frameborder="0"
        ng-idle-watch-iframe="" iframe-manager="" post-message=""
        ng-class="{ 'ui-hidden': !(MainCtrl.isIframeActive('cp')) }"
        name="cp-iframe" ui-interaction="">
</iframe>

Я могу получить страницу с информацией о заказе, например: your-bigcommerce-domain.com/admin/order/ndomorder_id‹/details

результат примерно такой:

enter image description here

Мы можем найти кнопку «Захват средств», но она НЕ активна.

Я вижу только активируемую кнопку захвата через проверку браузера.

enter image description here

может ли jquery получить элементы из "inspect" вместо исходного кода?

enter image description here

ссылка действия для захвата фонда:
your-domain.com / admin / order / {order-id} / capture-funds? Authenticity_token = b3d4 ************* 51b46abbdc1d9

, но я не знаю, откуда взялся authenticity_token.

На самом деле, я уже попробовал ниже способ ожидания браузера Chrome, чтобы завершить загрузку всех элементов:

setTimeout(function()
{
    console.log($('button.capture-trigger').length);
    $('button.capture-trigger').click();
}, 6000);

но он все еще не работает.у вас есть другие идеи, пожалуйста?

1 Ответ

0 голосов
/ 23 сентября 2019

К сожалению, вы не можете получить доступ к DOM iframe из расширения Chrome (см., Например, доступ к содержимому iframe из скрипта содержимого расширения chrome ).

...