summaryrefslogtreecommitdiffstats
path: root/dom/base/test/file_bug426646-1.html
blob: db07734412b7a442748c52c589dbd5bb55c2a671 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<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";

function soon(f) {
  return function() { setTimeout(f, 0); };
}

function doe() {
  document.body.innerHTML = "<iframe src='about:blank'></iframe>";
  document.body.innerHTML += "<iframe src='about:blank'></iframe>";
  window.frames[0].frameElement.onload = soon(doe2);
  window.frames[0].location.replace(url1);
}

function doe2() {
  window.frames[0].location = 'data:text/html;charset=utf-8,2nd%20page';
  window.frames[0].frameElement.onload = soon(doe3);
}

function doe3() {
  window.frames[0].frameElement.onload = soon(doe4);
  history.go(-1);
}

function doe4() {
  opener.is(String(window.frames[0].location), url1, "History.go(-1) didn't work?");
  opener.is(String(window.frames[1].location), "about:blank",
            "History.go(-1) didn't work?");
  close();
}
</script>
</head>
<body onload="doe();" onunload="opener.nextTest();">
</body></html>