iframe的history.replaceState问题

时间:2014-08-19 15:03:21

标签: javascript jquery html iframe history

我为此疯狂。我已经阅读了我能找到的关于这个主题的所有内容,但我迷失了......

我有一个带有按钮和2个iframe的页面。

<input name="showButton" type="button" id="showButton" value="Show" />
<iframe id="messagelistviewframe" src="blank.html"></iframe>
<iframe id="messageviewframe" src="blank.html"></iframe>

点击该按钮可更改2个iframe的网址。

$(document).ready(function () {
    $('#showButton').bind("click", function (e) {
        $('#messagelistviewframe').attr('src', 'red.html');
        $('#messageviewframe').attr('src', 'yellow.html');
    });    
}

不幸的是,这会创建2个历史记录条目,每个iframe网址更改一个。所以点击浏览器的后退按钮,我首先得到一个页面,第二个iframe回到原来的网址,如果我再次点击,我会得到两个。

我以各种可能的方式尝试过history.replaceState,我认为无济于事。我在Firefox上得到了一些结果,但Chrome和IE都没有。

有没有办法让后退按钮直接给我原始iframe网址的原始页面? TIA

1 个答案:

答案 0 :(得分:2)

最后在本文中找到了答案Reload an IFRAME without adding to the history。诀窍是重新创建iframe或从DOM中删除它并重新添加它。