8
回答
这样打印的结果为什么是空呢
注册华为云得mate10,2.9折抢先购!>>>   

本想打印出第一个iframe的宽度来

但没想到结果是空

弹出的结果如图

举报
ziluopao
发帖于1年前 8回/181阅
共有8个答案 最后回答: 1年前

引用来自“balance2014”的评论

在window.onload的方法里面加debugger调试看看就知道了。
<script type="text/javascript">
      window.onload = function(){debugger;iframe = document.getElementsByTagName("iframe");
  alert(iframe.style.width);}
                   </script>

这样加了后确实能调了,但是哪里能看出原因呢


你这是获取iframe自页的宽度,而不是iframe本身的宽度吧,也就是iframe内容为空。
--- 共有 1 条评论 ---
ziluopao应该是这样,但是如何修正呢? 1年前 回复

引用来自“学而不思则罔”的评论

你这是获取iframe自页的宽度,而不是iframe本身的宽度吧,也就是iframe内容为空。
你可以用这种方式获取iframe本身的宽度document.all.iframeId(你的iframe的id).width试试。

引用来自“学而不思则罔”的评论

你这是获取iframe自页的宽度,而不是iframe本身的宽度吧,也就是iframe内容为空。

引用来自“学而不思则罔”的评论

你可以用这种方式获取iframe本身的宽度document.all.iframeId(你的iframe的id).width试试。
我是嵌入别人的iframe,它的iframe中没有设ID,所以我用获取标签的方式

是不是在写法上有问题,因为iframe的行间样式这样写的

iframe frameborder="0" width="640" height="498"

而我是用这样方法获取的

iframe = document.getElementsByTagName("iframe")[0]; 
  alert(iframe.style.width);

引用来自“学而不思则罔”的评论

你这是获取iframe自页的宽度,而不是iframe本身的宽度吧,也就是iframe内容为空。

引用来自“学而不思则罔”的评论

你可以用这种方式获取iframe本身的宽度document.all.iframeId(你的iframe的id).width试试。

引用来自“ziluopao”的评论

我是嵌入别人的iframe,它的iframe中没有设ID,所以我用获取标签的方式
额,你还没理解啊,iframe的内容是别人的,但是iframe标签是你自己定义的啊,你现在要拿iframe本身的宽度,不是里面内容的宽度。给自己的iframe标签一个id就可以那么获取了。
--- 共有 1 条评论 ---
ziluopao解决了,我给iframe加了一个style width 1年前 回复
你是iframe.style.width,但是你看你的width不是style的,而是作为attribute设置的。你后来把width作为style设置就对了,这就是原因
顶部