【问题标题】:How can i dynamically change the size of an iframe when url changes [closed]url更改时如何动态更改iframe的大小[关闭]
【发布时间】:2015-09-22 21:21:30
【问题描述】:

如何为 iframe src 动态更改 iframe 的大小。如果 src 为 http://-----.com/index ,则 iframe 大小高度为 200,宽度为 400。如果 src 更改 http://-----.com/about ,则框架大小高度为 500,宽度为 700。

【问题讨论】:

  • 我不确定这个问题的哪一部分不清楚!很遗憾看到这样的搁置只会让新用户冷脚加入并贡献 Stack Overflow

标签: javascript php html iframe


【解决方案1】:

您可以通过添加 iframe 加载时的事件处理程序来实现此目的。在这个函数中,获取 iframe 的 src,并使用 switch 语句应用不同的样式:

首先为您的 iframe 提供一个 ID(如果尚未完成):

<iframe id="myFrame"></iframe>

而且JS可以听:

document.getElementById('myFrame').onload= function() {
  switch( this.src ){
     case 'http://example.com/index' : // Will fall through and execute same code as below
     case 'http://example.com/'      : this.style.width  = '400px';
                                       this.style.height = '200px';
                                       break; // Stop switch
     case 'http://example.com/about' : this.style.width  = '700px';
                                       this.style.height = '500px';
                                       break;
     default : /* Do something or not */
  }
};

【讨论】:

    【解决方案2】:

    您无法获得内框架文档高度,因此,您无法动态更改内框架高度...
    您所能做的就是添加滚动条。

    【讨论】:

    • 我可以看到@Anamika 想要做的是改变 iFrame 尺寸而不是它的内容 (src),这是可能的 :)
    • 我可以看到动态词。
    • 这意味着它可以是动态的,并且可以根据其 src 和不同的 url 进行更改,而不是静态的(总是相同的):)
    • 叹息...您无法切换到网络中的每个网站。
    • 当然不是,但谁知道我们在这里尝试做的可能只是针对同一个人创建的几个网页;)。所以回答会更有启发性:“是的,你可以,但不要这样做,因为这样那样......”我们仍然不知道用例是什么,但你当然可以动态更改 iFrame 大小
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多