我在“链接”页面上有一个包含URL链接的网站。每个链接都会将您带到一个Frame页面,该页面是一个拉入给定URL的大型iFrame。我正在使用javascript来执行此操作,它适用于FF,Safari,Opera和Chrome,但不适用于IE。有谁知道我可以做些什么来让它在IE中工作?
我在WordPress中构建它。我在标签和标签之间的Head部分有这个:
<script type="text/javascript" language="javascript">
function loadIF() {
iFrameSrc=location.href.split('?');
if ( iFrameSrc[1] != null ) {
document.getElementById('external').src=iFrameSrc[1];
}
else {
document.getElementById('external').src='default_page.htm'
}
}
</script>
然后我把它放在header.php中:
<body onload="loadIF()" <?php body_class(); ?>>
这是链接标记:
<a href="/frame1?http://www.website.com">Website</a>
Thanks- 克里斯
答案 0 :(得分:0)
您似乎在?
分割位置是否意味着您正在尝试获取参数?
如果是这样的话:
iFrameSrc = location.search;
if(iFrameSrc)
{
... // Code here
}
else
{
... // Code here
}
或尝试
if(iFrame && iFrame.length > 2)
{
... // Code here
}
else
{
... // Code here
}
编辑好的,所以看到你的编辑后,我想我最好加上这个:
获取我给你的第一个代码示例,并将第一个... // Code here
替换为:
document.getElementById('external').src= iFrameSrc.substr(1); // This will remove the leading question mark.
<强>更新强>
<html>
<head>
<title></title>
<script type="text/javascript">
function iFrameIF()
{
iFrameSrc = location.search;
if (iFrameSrc)
{
alert(iFrameSrc.substr(1));//document.getElementById('external').src = iFrameSrc.substr(1);
}
else
{
alert(); //document.getElementById('external').src = 'http://about:blank'
}
}
</script>
</head>
<body onload="iFrameIF()">
<iframe width="100%" height="1000" marginheight="1" marginwidth="1" align="top" allowtransparency="true" frameborder="0" name="external" id="external"></iframe>
<br />
</body>
</html>
输入ie:file://path/to/file.html?test
给我一个警告说“测试”