Сделайте обновление Firefox после изменения фрагмента из iframe

69
5

Мой код находится в iframe из другого домена, и я хочу инициировать обновление страницы у родителя после изменения фрагмента URL-адреса (также родителя).
Это происходит в IE, но не в Firefox. Есть ли способ сделать это без изменения внешнего документа (например, опроса)?


<a href="http://top.domain.com/#fragment" target="_top">click me</a>

В IE это прекрасно работает, внешний фрейм перезагружается после нажатия этой ссылки. Не так в Firefox.


Я уже пробовал с window.parent.location.reload(true), разрешение было отклонено.


Спасибо!

спросил(а) 2009-10-27T20:38:00+03:00 10 лет, 3 месяца назад
1
Решение
79

Хорошо, это то, что я наконец сделал. Хотя это не оптимальное решение, по крайней мере оно работает:
Я принудительно перезагружаю родителя, передавая фиктивный параметр с меткой времени, например:


<a href="http://top.dom.com/?dummy=13758#frag" target="_top" id="link">click</a>

Сгенерировано с чем-то вроде:

$("#link").attr("href", "http://top.dom.com/?d="+(new Date().getTime())+"#frag");

Это безобразно, но, по крайней мере, это работает

ответил(а) 2009-10-29T11:51:00+03:00 10 лет, 3 месяца назад
35

Вы можете использовать meta refresh или использовать другой язык, например php, который может перенаправить заголовок.

ответил(а) 2009-10-27T20:49:00+03:00 10 лет, 3 месяца назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема