修改iframe动态内容

时间:2015-06-18 07:31:55

标签: javascript jquery html css iframe

我正在尝试编辑外部网址上生成的dinamic内容的大小。 这是我的代码:

HTML:

<div id="movie">
    <iframe name="ifr" id="ifr" src="http://zeyu.ucoz.es/directvenvio.html" width="100%" height="480" frameborder="0" scrolling="no"></iframe>
</div>

在此源网址中,有2个生成iframe的脚本

我正在尝试更改此行的宽度高度

<script type='text/javascript'> 
 width=620, 
 height=382, 
 channel='zeyudirtc', 
 g='1';
</script>

这就是我正在尝试的:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
    $('#ifr').ready(function(){
        $('#ifr').contents().find('script').html('width=960, height=480, channel="zeyudirtc" ');
    });
});
</script>   

但这不起作用。

能帮帮我吗?

提前致谢。

3 个答案:

答案 0 :(得分:1)

检查css“!important”值。在CSS中,这是一个“高级别”

#ifr {
    height: 1000px!important;
}

http://jsfiddle.net/mraranturnik/4vqhLdpq/

答案 1 :(得分:1)

如果您可以访问iframes源,则可以。 您必须将Javascript代码添加到iframe内容和周围页面。

iframe内容中您需要的代码应如下所示:

首先获得高度,iframe需要。

var height = getDocHeight();
    var height = $("html").height();
    var ua = window.navigator.userAgent;
    var msie = ua.indexOf("MSIE ");
    if(msie > 0){
        height = Math.max(
        document.documentElement["clientHeight"],
        document.documentElement["scrollHeight"],
        document.body["scrollHeight"]
        );
    }

然后您必须向周围的页面发送消息。像这样:

parent.postMessage(height, "DomainOfTheSurroundingPage");

这就是iframe。

在另一个网站上,您需要收听消息。

 if (window.addEventListener) {
    window.addEventListener ("message", receiveMessage, false);        
} else {
    if (window.attachEvent) {
        window.attachEvent("onmessage", receiveMessage, false);
    }
}

function receiveMessage(event)
{       
  var height = event.data; 
  do something();
}

现在您可以使用高度(以px为单位)。 将iframe包装在div中。

Div
  --- iframe

然后将包装器div的高度设置为0,将填充底部设置为您提交的高度。

这应该可以解决问题。

如果您无法将代码添加到iframe内容中,则无法动态编辑iframe的高度和宽度。

答案 2 :(得分:1)

好的,这不是问题脚本或iframe而是movi url。在网址中你有玩家的大小。如果你想改变玩家的体型,你就可以做到这一点

var playerUrl = $('#ifr').contents().find('iframe').attr('src');

接下来为网址编写RegExp并在文件中添加iframe的新src值:

您的解决方案仅更改iframe尺寸而非播放器尺寸

In url you have player size