2013-12-04 10 views
-1

У меня есть домен,Как я могу перезагрузить iframe внутри iframe с помощью JavaScript?

example.com 

источник IFrame является,

server1.example1.com 

Проблема заключается в том, я хотел бы обновить IFRAME с JavaScript в моем IFRAME, когда я location.reload() страницу, Iframe нагрузки пустой, и это происходит только в хроме, как я могу это исправить?

+0

Я не думаю, что вы спрашиваете, возможно. Я считаю, что это нарушение политики того же происхождения (http://en.wikipedia.org/wiki/Same-origin_policy) ... – War10ck

+0

@ War10ck, но я ничего не нарушаю, просто хочу обновить мой iframe, с javascript – user3067113

+0

Межсайтовый скриптинг является нарушением. *** server1.example1.com *** рассматривается как отдельный домен. – War10ck

ответ

0

правой кнопкой мыши и перезагрузить кадров, seriousle:

Если IFrame не был на другом домене, вы могли бы сделать что-то вроде этого:

document.getElementById(FrameID).contentDocument.location.reload(true); 

Но поскольку IFrame находится на другом домене, вам будет отказано в доступе к свойству contentDocument iframe политикой того же происхождения.

Но вы можете взломать перекрестный домен iframe для перезагрузки, если ваш код работает на родительской странице iframe, установив для него свой атрибут src. Как это:

// hackishly force iframe to reload 
var iframe = document.getElementById(FrameId); 
iframe.src = iframe.src; 

Если вы пытаетесь перезагрузить IFRAME из другого фрейма, вы не повезло, что не представляется возможным.

+0

Я хочу перезагрузить свой iframe с помощью javascript, внутри того же iframe – user3067113

+0

@ user3067113 это разъяснение все еще несколько запутанно. Позвольте мне посмотреть, есть ли у меня это право. У вас только 1 iframe. Вы хотите, чтобы javaScript внутри iframe, чтобы сделать эту же перезагрузку iframe? –

+0

@ ZachL да это так правильно :) – user3067113

1

возможно попробовать это:

// Reload the current page, without using the cache 
document.location.reload(true); 

источник: https://developer.mozilla.org/en-US/docs/Web/API/Location.reload

Я знаю, что Chrome делает некоторые довольно умные вещи с кэшем, так что, возможно, что поможет.

+0

спасибо, но не работал :( – user3067113

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