【问题标题】:How to resize an IFRAME on load in an .aspx page?如何在加载 .aspx 页面时调整 IFRAME 的大小?
【发布时间】:2011-06-23 12:37:43
【问题描述】:

在带有 VB.NET 代码隐藏的 .aspx 页面中,我正在使用 IFRAME,该 IFRAME 将在转发器控件内创建。

由于我想根据页面内的内容调整 IFRAME 的大小,我一直在 IFRAME onload 上使用调整大小功能obtained from here,如下所示。

<iframe id="IframeSubsectionArea" scrolling="auto" width="100%" onload="resizeIframeToFitContent(this)" runat="server">

但是由于在表单中找不到该方法而引发错误。

  1. 是否有任何用于 onload 事件的客户端脚本变体?
  2. 可能是什么原因导致错误及其解决方案?

【问题讨论】:

    标签: javascript asp.net vb.net iframe onload


    【解决方案1】:

    如果您不介意使用 jQuery,这里的第一个答案应该可以解决问题 jQuery .ready in a dynamically inserted iframe

    $(document).ready(function() {
       $("iframe").load(function() {
            var iframe = $(this);
    
            //Do your resize here via the iframe var
       });
     });
    

    否则,您可能会因为文档中缺少此代码块而收到错误消息,但是由于您没有发布实际错误,我无法确定。

    <SCRIPT LANGUAGE="JavaScript">
    function resizeIframeToFitContent(iframe) {
        // This function resizes an IFrame object
        // to fit its content.
        // The IFrame tag must have a unique ID attribute.
        iframe.height = document.frames[iframe.id]
                        .document.body.scrollHeight;
    }
    </SCRIPT>
    

    编辑:如果这不起作用,请发布一些示例代码,以及您遇到的实际错误

    【讨论】:

    • 因为我无法在应用程序中实施建议,因为整个想法都被放弃了。但是建议有效。谢谢 Hawxby。为此 +1。
    猜你喜欢
    • 1970-01-01
    • 2010-10-01
    • 1970-01-01
    • 2023-03-06
    • 1970-01-01
    • 1970-01-01
    • 2014-10-20
    • 2014-05-26
    • 2014-01-01
    相关资源
    最近更新 更多