У меня есть домен, содержащий iframe с содержимым из другого домена. Внутри этого iframe есть _top ссылки. На IE6 вообще ничего не происходит при нажатии на них. Я подготовил минимальный пример этого. Пожалуйста, перейдите на http://www.bemmu.com/static/top.html с IE6, чтобы попробовать.
Редактировать: кажется, что это происходит только в том случае, если уровень безопасности «высокий» (или, возможно, пользовательский), который был по умолчанию в моем IE при новой установке
Источник http://www.bemmu.com/static/top.html:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/DTD/strict.dtd"> <html> <body> <iframe src="http://bemmu4.appspot.com/static/iframe.html"/> </body> </html>
Источник http://bemmu4.appspot.com/static/iframe.html:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/DTD/strict.dtd"> <html> <body> <a href="http://www.google.com" target="_top">Let's go to Google!</a> </body> </html>
Есть ли способ заставить эти _top ссылки работать?
У меня не установлено ie6 на моей машине, но я думаю, что вы можете попробовать небольшой трюк в iframe, установив атрибут onclick в вашем теге привязки с помощью window.top.location.href='http://www.google.com';. Это работает?
window.top.location.href='http://www.google.com';
Работает ли у вас что-то подобное?
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/DTD/strict.dtd"> <html> <body> <a href="http://www.google.com" target="_top" onclick="javascript:if(window.top){window.top.location='http://www.google.com';}">Let's go to Google!</a> </body> </html>