2013-04-30 516 views
0

我的服务器上的页面具有多个具有不同ID的iframe标签。我添加了一个嵌入YouTube视频的iframe标签。 iframe标签有一个样式元素,它可以为其添加250个宽度和250个高度。我想删除这个添加到iframe中的样式,以便youtube视频显示iframe标签中的高度和宽度,只是从该特定的iframe中显示,因为页面上有其他iframe标签,其样式不应该被触摸。如何从iframe标签中删除样式(不在iframe内但在标签内)

1)的代码,我加入(通知宽度= 640 HEIGHT = 390)

<iframe id="player" type="text/html" width="640" height="390" src="http://www.youtube.com/embed/GxTl1Ykbuww?enablejsapi=1&origin=origin-domain.com" frameborder="0"></iframe> 

2)当用浏览器加载的是页面上的代码(注意style="height:250;width:250;"被添加到iframe标签现在,这是我想要的生活垃圾被删除,而只是从这个iframe标签ID

<iframe id="player" style="height: 250px; width: 250px;" src="http://www.youtube.com/embed/GxTl1Ykbuww?enablejsapi=1&amp;origin=origin-domain.com" height="390" width="640" frameborder="0"></iframe> 

Javascript或jQuery的将是很好的,但在jQuery的条状风格删除标签从页面的每一个iframe中。

理想的解决方案将导致只有iframe的id="player"从上面的2)更改为不再具有style=""或具有style =“”但内部没有任何内容。

回答

2
$('#player').removeAttr('style') 

应努力采用最新的jQuery

作为解释

$('#player') 

目标与ID = '玩家'(将#目标的ID,如CSS选择器)DOM元素。

removeAttr('style') 

去除目标物体的 '风格' 属性

+0

谢谢!那就是诀窍。 – NickNo 2013-04-30 09:27:16

0
Try with , 
For style change : 
$("#player").css("Height","90"); 

For attribute change : 
$("#player").attr("Height","90"); 

For inside of iframe tag attribute or style change : 
$("#player div").attr("Height","90"); 
$("#player div").css("Height","90"); 
0

试试这个

$('#player').removeAttr('style'); 
+1

@DocKuro ...更快,没有看到。 – 2013-04-30 07:01:45

+1

也一直发生在我身上:) – DocKuro 2013-04-30 07:30:52

1

document.getElementById('player').removeAttribute('style')

我想是不是什么时候应该使用jQuery的情况下,或任何其他JS库

CSS解决方案:#player { width: 640px !important; height: 390px !important; }但使用!important是不好的做法。

+0

这是不好的做法,但它是完全有效的:) – casraf 2013-04-30 07:33:50