Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
IE hack for javascript&;iframe_Javascript - Fatal编程技术网

IE hack for javascript&;iframe

IE hack for javascript&;iframe,javascript,Javascript,我有一个链接页面上的URL链接的网站。每个链接都会将您带到一个框架页面,该页面是一个很大的iFrame,可以拉入给定的URL。我正在使用javascript来实现这一点,它可以在FF、Safari、Opera和Chrome中工作,但不能在IE中工作。有人知道我可以做些什么来让它在IE中工作吗 我在WordPress中构建了它。我在标签和标签之间的标题部分有: <script type="text/javascript" language="javascript">

我有一个链接页面上的URL链接的网站。每个链接都会将您带到一个框架页面,该页面是一个很大的iFrame,可以拉入给定的URL。我正在使用javascript来实现这一点,它可以在FF、Safari、Opera和Chrome中工作,但不能在IE中工作。有人知道我可以做些什么来让它在IE中工作吗

我在WordPress中构建了它。我在标签和标签之间的标题部分有:

    <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)行上方<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>