Div 不能够跨 iframe 显示,可采用以下方式解决:
leftIframe :菜单
rightIframe :显示具体内容
可以在 leftIframe 包含的页面中控制 rightIframe 中层的显示和隐藏,将菜单项写到该层中并在适当的位置显示,也可以使用 Ajax 从数据库中获取菜单项插入到该层中进行显示。
试验了很多种方法,是目前我所知道的一种切实可行的实现 div 跨 iframe 显示的比较好方案!
function showRightDiv(event) {
var rightframe = window.parent.frames[ "I3" ].document.body;
var layer = "<div id=/"subMenuDiv/" style=/"position:absolute;z-index:100;visibility:hidden/"></div>" ;
$(rightframe).append(layer);
var rightDiv = window.parent.frames[ "I3" ].document.getElementById( "subMenuDiv" );
rightDiv.innerHTML= "<table border=' solid 1px black' width='100px'><tr><td> 第一项 </td></tr>"
+ "<tr><td> 第二项 </td></tr>"
+ "<tr><td> 第三项 </td></tr>"
+ "<tr><td> 第四项 </td></tr>"
+ "</table>" ;
var y = event.clientY;
$(rightDiv).css( "left" , "0px" );
$(rightDiv).css( "top" ,y);
$(rightDiv).css( "width" , "100px" );
$(rightDiv).css( "font-size" , "12px" );
$(rightDiv).css( "background-color" , "red" );
$(rightDiv).css( "visibility" , "visible" );
}