Запретить IE обновлять страницу - iframe _top - PullRequest
1 голос
/ 08 декабря 2010

Как я могу запретить IE обновлять страницу?Я хочу, чтобы он вел себя как FF, SF & C. Поскольку это та же страница, он не должен загружать ...

Родительская страница:

<!DOCTYPE html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
    <p>This is the parent page. I don't want this page to reload in IE when the link in the iframe is clicked, since it break our javascript. I only want the "hash" to change.</p>
    <iframe src="http://example.com/iframepage.html"></iframe>
</body>
</html>

Страница iframe:

<!DOCTYPE html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
    <p>This is the iframe page. The URL is the same as the parent page + anchorlink. When I klick this link in IE the page refresch and the javascript breaks. In FF, SF & C it doesn’t "refresh" page…</p>
    <a href="http://www.example.com/test.html#test1" target="_top">test1</a>
</body>
</html>

1 Ответ

0 голосов
/ 16 марта 2011

попробуйте этот код для всех браузеров

var src = document.getElementById("mydiv").getAttribute("src");

if (navigator.appName == "Microsoft Internet Explorer")  // ie iframe reload fix
    document.getElementById("mydiv").setAttribute("src","");

$SQuery(mydiv).setAttribute("src",src); // this will not save it in history ;)
...