【发布时间】:2011-02-21 13:30:29
【问题描述】:
您好,这一切都是在我运行一个改变 iframe 的 innerHTML 的函数(我们称之为 loadround)时开始的。现在一旦加载了加载框架,iframe 中的链接一旦点击就会改变 iframe 页面。唯一的问题是当我单击后退按钮时,loadround 页面消失了。我已经想了很多次,但无济于事。所以我尝试了这段代码。
<a href="javascript:void(loadround('parameter1','parameter2'))">loadround</a>
然后
function loadround(a,b){
window.location.hash = "#loadround('"+a+"','"+b+"')";
var code = "<(h2)>"+a+"</(h2)><(h2)>"+b+"</(h2)>"
var iFrame = document.getElementById('iframe');
var iFrameBody;
iFrameBody = iFrame.contentDocument.getElementsByTagName('body')[0]
iFrameBody.innerHTML = code;
}
(h2中的括号是故意的) 然后我会尝试通过可能的 onload 函数重新加载该函数,但现在我正在使用一个简单的 href 进行测试,如下所示。
function check(){
var func = location.hash.replace(/#/, '')
void(func);
}
<a href="javascript:check()">check</a>
不幸的是,检查代码不起作用,我几乎可以肯定有一种更简单的方法可以做到这一点。我尝试更改 iframe 的 src 而不是 innerhtml 并且存在同样的问题。在此先感谢
【问题讨论】:
-
哇,是的,换行符没有出现,希望那是清晰的
标签: javascript url hash