2013-03-27 55 views
0

我对web开发相当陌生,并且自学了我所做的一切。我有一个iframe,其中有一个页面,其中包含一个由jquery调用的css & JavaScript弹出窗口。应该发生什么情况是,当按下链接时,在进入下一页之前,它显示在带有阴影背景的弹出窗口中。这是我的javascript代码:iframe导致css弹出问题

$SearchListings.on("click", "a", function (e) { 
    e.preventDefault(); 
    href = e.target.href; 
    itemnum = getItemNum(href); 
    var dataString = //urlhere 
    $.get(dataString, function (data) { 
     $linkShade.fadeIn(); 
     $linkModal.html(data).delay(500).fadeIn(); 
     Galleria.loadTheme('js/galleria.classic.min.js'); 
     $('#galleria').galleria({ lightbox: true }); 
    }); 
}); 

$linkShade.on("click", closeModal); 
$linkModal.on("click", ".modalCancel", closeModal); 

$linkModal.on("click", ".modalBtn", function (e) { 
    e.target.href = href; 
});` 

,这是一种参与

#linkModal { 
background: white; 
border: 10px solid black; 
bottom: 0; 
color: black; 
display: none; 
font-family: Helvetica, "Helvetica Neue", Arial, sans-serif; 
height: 700px; 
left: 0; 
margin: auto; 
position: fixed; 
right: 0; 
top: 0; 
width: 800px; 
overflow: scroll; 

} 

的CSS我的问题是如何能得到弹出来显示和居中的屏幕,用户的位置上该页面不仅仅集中在iframe中。如果这个解释不好,我很抱歉。这是我有史以来的第一篇文章。大多数情况下,我来这里找到我的答案,并且从不需要发布任何内容。如果可以的话请帮忙。谢谢!

编辑#1: 这里是jsfiddle

+0

你可以把你的代码放在[jsFiddle](http://www.jsfiddle.net)中吗? – chriz 2013-03-27 16:04:56

回答

1

可惜你不能从父页访问任何内容中的iFrame,如屏幕尺寸,以便通过JavaScript设置值。而子页面中的CSS只与包含iFrame的窗口的解释“屏幕大小”有关。

如果您确实有固定布局,则可以将屏幕大小作为查询字符串参数传递到您的iFrame页面。

var $iframe = $("#myIframe"); 
$iframe.attr("src", "iFrame.html?parentHeight=" + $(window).height() 
            + "&parentWidth=" + $(window).width() 
            + "&iFrameHeight=" + $iframe.height() 
            + "&iFrameWidth=" + $iframe.width(); 

然后,你可以做一些数学的时候,以你的设置模式对话框的位置,所以会出现集中的子页面加载,但它仍然必须被包含在你的iFrame。