jquery - 设置iframe宽度不起作用

时间:2014-09-09 15:35:43

标签: javascript jquery html css iframe

我知道,这件事被问了2万亿次,但我还是不能完成。 iframe是在我从外部Feed获取的源内动态生成的。

我的jquery是:

$(function(){
   $('iframe').each(
      function(index, elem) {
         elem.setAttribute("width","250");
      }
   );
});

此代码无法设置iframe的宽度。

还有一件事:我检查了iframe属性,并且在浏览器中不可编辑,这与其他css样式不同 - 这意味着,我的jquery在DOM准备好后也无法设置它

enter image description here

到底是什么?这有什么解决方法吗?

5 个答案:

答案 0 :(得分:1)

$('iframe').each(function(){
    $(this).width(250);
});

文档:http://api.jquery.com/each/http://api.jquery.com/width/#width-value

答案 1 :(得分:0)

使用.attr,而不是.setAttribute

答案 2 :(得分:0)

为我工作

    $('iframe').each(function(){
        $(this).width( w );
    });

http://jsfiddle.net/8e1gz475/

答案 3 :(得分:0)

有一种非常简单的方法来分配" 宽度或高度"运行时的任何元素,并使用" .width().height()" jQuery的方法。

参见:

http://api.jquery.com/width/

http://api.jquery.com/height/

以下是一个例子:

<script type="text/javascript">
    $(document).ready(function () {
        $("iframe").width(500);
        $("iframe").height(500);
    });
</script>

Example:常规iframe,无需在运行时更新高度和宽度。

Example:在运行时更新高度和宽度。

这是iframe宽度的另一个stackoverflow问题,如果你使用多个iframe,你可以在答案中找到很好的解释:  的 Change iframe width and height using jQuery?

答案 4 :(得分:0)

尝试:

$(function(){
   $('iframe').each(
      function(index, elem) {
         elem.css({ "width":"250px !important" });
      }
   );
});