Нет прав на фрейм
Набираю в консоли Firebug (или другой):
//Нахожу некий фрейм в окне: document.querySelectorAll("div#comments-test-iframe iframe"); Пытаюсь с этим фреймом что-либо делать. Мне говорят, что я не имею прав на это. Как запустить команду в консоли (а потом и в расширении) так, чтобы я имел все права на нужный фрейм? |
Цитата:
Если на том же, то типичная ошибка: не дожидаются события загрузки фрейма Второе, доступ к контент осуществляется ... Пример: Frame = document.querySelectorAll("div#comments-test-iframe iframe"); Frame.onload = function() { docFrame=Frame.contentWindow.document; alert(docFrame.body.innerHTML) } |
Фрейм у меня уже подгружен
Пишу так: var Frame = document.querySelectorAll("div#comments-test-iframe iframe"); docFrame=Frame[0].contentWindow.document; alert(docFrame.body.innerHTML) А мне в ответ всё то же: Error: Permission denied to access property 'document' Наверное, фрейм в другом домене. И как теперь с ним работать? |
Цитата:
или смотреть иной вариант кросс обмена |
Цитата:
Но ведь проблема то банальная. Неужели нет способа попроще?! |
Выяснил, что в расширении права на фрейм можно получить, даже если он из другого домена. Для этого работать с фреймом нужно, получив его в контексте например всплывающего меню, вызванного щелчком мышки по области фрейма:
docframe = document.popupNode.ownerDocument; А Firebug так не умеет. |
Часовой пояс GMT +3, время: 08:31. |