JJ874444051
2016-07-05 03:07
采纳率: 18.2%
浏览 2.1k
已采纳

改变iframe的宽度和高度的问题

加载视频的时候,height设置的值会先显示然后执行js跳变到需要的高度,怎样才能没有这种跳变的过程。

 <iframe class="video_iframe" style="z-index:1;" src="http://v.qq.com/iframe/player.html?vid=uhrdeh518" llowfullscreen="" frameborder="0" onload="Javascript:setHeight(this)" width="100%" height="0" scrolling="auto"></iframe>

<script type="text/javascript">
    function setHeight() {
        var bodyw = document.body.clientWidth;
        for (var ilength = 0; ilength <= document
                .getElementsByTagName("iframe").length; ilength++) {
            document.getElementsByTagName("iframe")[ilength].height = bodyw * 9 / 16;//设定高度 
        }
    }
</script>
  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • 已采纳

    你又没有使用到iframe的高度作为计算参考,而是当前页面的宽度,直接计算设置iframe高度就行
    去掉iframe的onload事件,将js代码放到body结束标签之前

     <script type="text/javascript">
        function setHeight() {
            var bodyw = document.body.clientWidth;
            for (var ilength = 0; ilength <= document
                    .getElementsByTagName("iframe").length; ilength++) {
                document.getElementsByTagName("iframe")[ilength].height = bodyw * 9 / 16;//设定高度
            }
        }
        setHeight();/////////////
    </script>
    </body>
    
    评论
    解决 无用
    打赏 举报
查看更多回答(3条)

相关推荐 更多相似问题