日期:2014-05-17  浏览次数:20420 次

js获取iframe的src的内容高度
就是ifamre自适应高度,
default.aspx代码
<div id="middle">
    <iframe id="middle_main" src="main.aspx">
    </iframe>
   </div>

 main.aspx代码
<body>
    <form id="form1" runat="server">
    <div id="main">
    
    </div>
    </form>
</body>

我要在default.aspx中用js获取main.aspx中这个main的div的高度,有没高手知道啊?我百度一大堆都不行
------解决方案--------------------
从外部获取不到,你不用找了。

从安全角度考虑(避免流氓钓鱼网站嵌入别人的网页),一个网页只能从其内部获取外部(上层)frame的高度,而不是反过来的。
------解决方案--------------------
default.aspx
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script type="text/javascript">
        function dd() {

            alert(frames[0].getmain());
            return false;
        }
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div id="middle">
    <iframe id="middle_main" src="main.aspx">
    </iframe>
   <button onclick="dd();">sadfsadf</button>
   </div>

    </form>
</body>
</html>


main.aspx
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script type="text/javascript">
        var getmain = function () {
           return document.getElementById("main").offsetHeight;
        };
    
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div id="main" style="width:100px; height:100px; background-color:Silver">
    
    </div>
    </form>
</body>
</html>

------解决方案--------------------
Jquery
$("#middle_main").contents().find("#main").height()