Html iframe中的弹出覆盖未显示在页面顶部
我的aspx页面上有一个iframe。在这个iframe中,我调用另一个包含覆盖和弹出div的aspx页面。单击按钮(在iframe中),我显示覆盖和弹出。我已经正确地设置了绝对位置和z索引,但问题是弹出窗口和覆盖仅覆盖iframe区域,而不是父页面。我将为您提供此行为的可能解释Html iframe中的弹出覆盖未显示在页面顶部,html,asp.net,iframe,popup,Html,Asp.net,Iframe,Popup,我的aspx页面上有一个iframe。在这个iframe中,我调用另一个包含覆盖和弹出div的aspx页面。单击按钮(在iframe中),我显示覆盖和弹出。我已经正确地设置了绝对位置和z索引,但问题是弹出窗口和覆盖仅覆盖iframe区域,而不是父页面。我将为您提供此行为的可能解释 您可能已经在i-frame内调用的页面上定义了弹出窗口和覆盖 您可能没有指定覆盖宽度:100%,高度:100% 理想情况下,您应该使用位置:固定覆盖,否则,如果您的页面向下滚动,覆盖将不在查看端口中 我们可以在某个地方
我们可以在某个地方看到您的此页面吗?如果您在包含iframe(主页)的页面上定义了弹出窗口和覆盖,则它应该按您所希望的方式显示。您不能从iframe内的页面将父页面作为目标。。这是不可能的。。弹出窗口将以iframe作为其父页面。。。如果您想让弹出窗口覆盖整个屏幕,那么唯一的方法就是在父页面本身的div中定义在您在iframe中调用的页面中定义的所有控件 说:你有一个.aspx页面。里面有一个id为frame的iframe。现在iframe u的src将其设置为b.aspx。因此,无论在b.aspx中有什么控件,都可以在a.aspx中定义一个div,并将b.aspx的所有控件放入该div中。。因此,现在您可以将a.aspx作为弹出窗口的目标 我不知道您是否有定义iframe并调用另一个页面的具体原因。。但如果没有具体原因,那么您可以使用此方法:)
如果您有任何疑问,请告诉我是否有解决方案
function showHide(){
parentWin = window.parent;
var overlay = parentWin.document.getElementById('mask');
if(overlay.style.display == 'none'){
overlay.style.display = 'block';
}
}
让我知道任何问题如果您不能将弹出式HTML放入父页面,我建议您克隆弹出式div和覆盖式div,然后将其附加到父页面正文中。
如果有,请确保复制事件和数据。是的,我已在I-frame内的tha页面上定义了弹出窗口和覆盖,尽管我已给出100%的覆盖宽度和高度,并且它在iframe上正常工作。它覆盖了整个iframe区域。但是我想在iframe之外显示这个覆盖和弹出窗口(在主页上),我有很强的理由这样做,因为父页面是一个cms页面,这个cms页面也用于其他url(页面id),这就是我使用iframe的原因。无论如何,谢谢你的建议不客气。。但我确信你不能从iframe内的页面中定位主页。我可以再给你一个建议。。只能为要弹出的页面设置div。。当div可见时,jus set iframe不可见,反之亦然。。可以吗???