2013-02-19 3 views
0

У меня есть один IFrame внутри на IFRAME и с помощью этого кода я хочу изменить СРК изображенияIframe в Iframe не может сделать изменения

window.top.frames[0].frames[0].document.getElementById("maquina").src = "https://developer.cdn.mozilla.net/media/img/mdn-logo-sm.png"; 

и когда я попробовать это работает, но я не могу видеть изменения в страницы, только в коде, когда e читается .src этого элемента

ответ

0

Вы не можете манипулировать содержимым iframe из родительского фрейма без глобального метода доступа к дочернему DOM. Существует ответ Here, который соответствует вашим потребностям, но я скопирую ниже для справки:

В детской IFRAME:

parent.childGetElementById = function (id) {return document.getElementById(id);} 
parent.childLoaded(); 

В родителю:

function childLoaded() {var dom = childGetElementById('someid');} 

Предполагая, что вы имеете доступ на дочернюю страницу, я бы рекомендовал изменить ваш дизайн от использования iframes.

[Ответ на комментарий]

Ну это зависит от того, если вы используете только прямой HTML или язык сценариев (например, PHP). Если чистый HTML, вы можете использовать на стороне сервера включает в себя с

<!-- #include virtual="path/to/included/file.html" --> 

В PHP, вы можете включить страницу как этот

require('/real/path/to/included/file.php'); 

Не поймите меня неправильно, плавающие фреймы могут быть полезны в некоторых конкретных ситуации (обход политик происхождения в разных доменах, реализация oAuth и т. д.); они чаще подвергаются насилию, чем правильное использование.

+0

ok Я попробую, но какой лучший способ создать «модули» html без iframe? – user2088922

Смежные вопросы