我有一个无法工作的功能。我在stackoverflow上搜索了同样的问题,但没有找到任何解决方案......
所以这是我的 index.php 中的代码片段。我有一个带有 news/index.php 的 iframe。
<div id="hirek1">
<iframe id="newsframe" src="news/index.php"></iframe>
</div>
<script type="text/javascript" src="mutato.js">milyenmagas();</script>
这是news/index.php。它的内容是一个 php 代码,其输出高度根据其中新闻的长度动态变化:
<div id="hirekmagassag"><!--content--></div>
<script type="text/javascript" src="mutato.js">milyenmagas();</script>
函数(mutato.js):
function milyenmagas()
{
if(document.getElementById('hirekmagassag') != null)
var divmag = document.getElementById('hirekmagassag').offsetHeight;
var framemag = (divmag + 10 + 'px');
if(document.getElementById('hirek1') != null)
var iframe = document.getElementById('hirek1').getElementsByTagName('iframe')[0];
if(document.getElementById('hirek1') != null)
iframe.height = framemag;
if(document.getElementById('hirek1') != null)
iframe.style.height = framemag;
setTimeout('milyenmagas();', 1000);
}
因此,该函数的重点是将 iFrame 的高度设置为等于(+10 像素以避免滚动条)与其中内容的高度。正如您在上面看到的,该函数在两个 div 之后调用,并且由于它们被调用两次(在每个文件中一次),ifs 用于整理两个 php 文件之间的操作。
这对我现在不起作用。除非我将iframe.height和iframe.style.height的值从变量framemag更改为例如“500px”,否则它可以完美运行。我不明白我做错了什么。即使我调用alert(framemag); 它抛出了应该作为样式参数完美工作的正确字符串。
我在这里想念什么?