chrome中重定向问题
Chrome似乎不支持target跳转到其他frame(target=”_self”是可以的),所以当页面中使用了frame时,多层嵌套frame时,frame之间的跳转就有问题了。
解决办法:
使用JS改变目的frame的src属性.
example:
parent.html主要内容:
/*同域中,chrome target指向Iframe跳转问题的解决方法:使用JS绑定click事件,改变Iframe的src*/
<script>
function changeMainFrameURL(url){
$("#mainFrame").attr("src",url);//JQuery获取Frame元素
}
</script>
<frameset id="treeFrameSet" name="treeFrameSet" FRAMESPACING="0" TOPMARGIN="0" LEFTMARGIN="0" MARGINHEIGHT="0" MARGINWIDTH="0" frameborder="1" border="4" BORDERCOLOR="#D7E7FF" >
<frame id="mainFrame" name="mainFrame" src="child.jsp" framespacing="0" scrolling="no">
</frameset>
child.jsp中主要内容:
<frameset id="treeFrameSet" name="treeFrameSet" FRAMESPACING="0" TOPMARGIN="0" LEFTMARGIN="0" MARGINHEIGHT="0" MARGINWIDTH="0" frameborder="1" border="4" BORDERCOLOR="#D7E7FF" >
<frame id="chilFrame" name="chilFrame" src="sun.jsp" framespacing="0" scrolling="no">
</frameset>
sun.jsp主要内容:
/*chorme target重定向 iframe解决办法*/
<script>
function toMainFrame(url){
parent.parent.changeMainFrameURL(url);//parent.html->changeMainFrameURL(url)
}
</script>
<a href="javascript: void(0)" onclick="toMainFrame('myHTML.jsp')">
点击,重定向到目标jsp并显示mainFrame
</a>
总结:在目标frame的页面中写JS,改变frame的src;在源frame中调用目标frame的js代码
2017-09-19