如果可能的话,刷新后保留iframe url

If it possible to retain iframe url after refresh?

本文关键字:保留 iframe url 刷新 如果      更新时间:2023-10-06

我想保留当前页面,但每次刷新iframe时都会返回到默认页面url src="app.php"。例如,我在pr.php上,不小心刷新了页面,我想留在那个页面上。如果可能的话?

<a href="app.php" target="contents">APP</a><br/>
<a href="rfq.php" target="contents">RFQ</a><br/>
<a href="pr.php" target="contents">PR</a><br/>
<a href="addapp.php" target="name" onclick="modalWin(); return false;">Add APP</a><br/>
<a href="livesearch/index.php" target="contents">SEARCH</a><br/>
    <iframe name="contents" src="app.php" frameborder="0"  id="iframe" 
    frameborder="0" style="moz-overflow:hidden;moz-overflow-x:hidden;moz-overflow-y:hidden;height:100%;width:100%;position:absolute;top:0px;left:0px;right:0px;bottom:0px" height="100%" width="100%"> </iframe>

您可以使用html5 localStorage保存iframe的当前url,然后刷新页面尝试加载它,如果未定义,则尝试加载初始页面。iframe的标记声明中不能有src属性,您将使用jquery设置它。我已经做了一个你可能想要的近似值,我希望它能起作用

$(document).ready(function() {
    currentLocation = localStorage.prevUrl || 'yourInitialSrc';
    $('#iframe').attr('src', currentLocation);
    $('#iframe').load(function() {
        localStorage.prevUrl = $(this)[0].contentWindow.location.href;
    })
})

iframe加载页面时会触发iframe负载事件。因此,在你的iframe中,如果你转到另一个链接,就会触发加载事件,并在浏览器中本地保存你现在的url。

但是,请尽量避免iframe。注意如何操作本地存储。。。