2008-04-29 00:18:55 -07:00
|
|
|
<html><head>
|
|
|
|
<title>Bug 426646, Using location.replace breaks iframe history</title>
|
|
|
|
<script type="text/javascript">
|
|
|
|
var url1 = "data:text/html;charset=utf-8,1st%20page";
|
|
|
|
|
2011-08-01 16:45:47 -07:00
|
|
|
function soon(f) {
|
|
|
|
return function() { setTimeout(f, 0); };
|
|
|
|
}
|
|
|
|
|
2008-04-29 00:18:55 -07:00
|
|
|
function doe() {
|
|
|
|
document.body.innerHTML = "<iframe src='about:blank'></iframe>";
|
|
|
|
document.body.innerHTML += "<iframe src='about:blank'></iframe>";
|
2011-08-01 16:45:47 -07:00
|
|
|
window.frames[0].frameElement.onload = soon(doe2);
|
2008-04-29 00:18:55 -07:00
|
|
|
window.frames[0].location.replace(url1);
|
|
|
|
}
|
|
|
|
|
|
|
|
function doe2() {
|
|
|
|
window.frames[0].location = 'data:text/html;charset=utf-8,2nd%20page';
|
2011-08-01 16:45:47 -07:00
|
|
|
window.frames[0].frameElement.onload = soon(doe3);
|
2008-04-29 00:18:55 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
function doe3() {
|
2011-08-01 16:45:47 -07:00
|
|
|
window.frames[0].frameElement.onload = soon(doe4);
|
2008-04-29 00:18:55 -07:00
|
|
|
history.go(-1);
|
|
|
|
}
|
|
|
|
|
|
|
|
function doe4() {
|
|
|
|
opener.is(window.frames[0].location, url1, "History.go(-1) didn't work?");
|
|
|
|
opener.is(window.frames[1].location, "about:blank",
|
|
|
|
"History.go(-1) didn't work?");
|
|
|
|
close();
|
|
|
|
}
|
|
|
|
</script>
|
|
|
|
</head>
|
|
|
|
<body onload="doe();" onunload="opener.nextTest();">
|
|
|
|
</body></html>
|