Привет Я создаю расширение chrome, в которое я вставляю iframe на некоторые страницы. В функции onload iframe я пытаюсь получить доступ к элементам внутри iframe с помощью JQuery.Доступ к iframe, введенному расширением chrome с помощью JQuery
$("#divInside-iframe",iframeDocument)
При попытке сделать это я получаю сообщение об ошибке:
Uncaught SecurityError: Не удалось выполнить «addEventListener» на «EventTarget»: Запрещенные кадр с началом «http://www.whateverpage.com» от доступа кадр с началом " хром-расширение: // meehnkofmafeb ******». Запрос доступа к кадру имеет протокол «http», к кадру, к которому обращаются, имеет протокол «chrome-extension». Протоколы должны совпадать.
Интересно, эта ошибка возникает при первом попытке получить доступ к чему-либо внутри iframe. Это не произойдет в последующих вызовах, если только я не получаю доступ к чему-либо из обычного шаблона страницы между ними. После чего ошибка повторяется один раз снова.
Что-то, как смешно, как
try{
$("#divInside-iframe",iframeDocument)
}catch(error){
$("#divInside-iframe",iframeDocument)
}
работает как путь вокруг!
Также обратите внимание, что ошибка находится в сильной части кода JQuery.
Проверено с Jquery 2.1.3 и 1.11.1
Я загружаю содержимое расширения. Что-то вроде ['(myiFrame.src = chrome.extension.getURL ('/ pages/index.html')']; – insanevirus
, пожалуйста, проверьте мое редактируемое объяснение в вопросе – insanevirus