IE hack for javascript&;iframe
我有一个链接页面上的URL链接的网站。每个链接都会将您带到一个框架页面,该页面是一个很大的iFrame,可以拉入给定的URL。我正在使用javascript来实现这一点,它可以在FF、Safari、Opera和Chrome中工作,但不能在IE中工作。有人知道我可以做些什么来让它在IE中工作吗 我在WordPress中构建了它。我在标签和标签之间的标题部分有:IE hack for javascript&;iframe,javascript,Javascript,我有一个链接页面上的URL链接的网站。每个链接都会将您带到一个框架页面,该页面是一个很大的iFrame,可以拉入给定的URL。我正在使用javascript来实现这一点,它可以在FF、Safari、Opera和Chrome中工作,但不能在IE中工作。有人知道我可以做些什么来让它在IE中工作吗 我在WordPress中构建了它。我在标签和标签之间的标题部分有: <script type="text/javascript" language="javascript">
<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>
函数loadIF(){
iFrameSrc=location.href.split(“?”);
如果(iFrameSrc[1]!=null){
document.getElementById('external').src=iFrameSrc[1];
}
否则{
document.getElementById('external').src='default\u page.htm'
}
}
然后我把它也放在header.php中:
<body onload="loadIF()" <?php body_class(); ?>>
您似乎正在拆分上的位置?
这是否意味着您正在尝试获取参数
如果是:
iFrameSrc = location.search;
if(iFrameSrc)
{
... // Code here
}
else
{
... // Code here
}
或尝试
if(iFrame && iFrame.length > 2)
{
... // Code here
}
else
{
... // 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>
函数iFrameIF()
{
iFrameSrc=location.search;
if(iFrameSrc)
{
警报(iFrameSrc.substr(1));//document.getElementById('external').src=iFrameSrc.substr(1);
}
其他的
{
alert();//document.getElementById('external').src='1http://about:blank'
}
}
在ie中键入:file://path/to/file.html?test
给了我一个提示,上面写着“test”谢谢James,我试过了,现在URL不会加载到任何浏览器中。我是javascript的白痴。。。这就是您所指的代码:函数loadIF(){iFrameSrc=location.search;if(iFrameSrc){document.getElementById('external').src=iFrame.substr(1);}else{document.getElementById('external').src='default_page.htm'}--抱歉--无法理解如何创建此代码模式…我对iFrame.substr(1)进行了打字错误更改iFrame.substr(1)代码>至iFrameSrc.substr(1)代码>。很抱歉我最初的想法是href在IE中的作用不同。在设置它之前,你能在IE中放入一个警报来查看.src
属性的值是什么吗?警报(document.getElementById('external').src+“”+iFrameSrc)
将其置于document.getElementById('external').src=iFrameSrc.substr(1)行上方告诉我发生了什么事谢谢。在Chrome中会弹出这样的对话框:?——但在IE中,什么都不会出现。。。[不知道如何关闭我评论中的链接…请原谅我的无知…]更多信息将有帮助。。。
<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>