2014-01-22 38 views
0

我有这样的:如何将iframe替换为另一个if type =“text/html”?

<iframe type="text/html" width="640" height="360" 
src="http://widget.smartycenter.com/webservice/directYoutube/8982/YOUTUBE_CODE/640/360" 
frameborder="0" allowfullscreen="" scrolling="no"></iframe> 

如果iframe的类型是TYPE = “text/html的”我将它更换成

<iframe width="560" height="315" src="//www.youtube.com/embed/YOUTUBE_CODE" 
frameborder="0" allowfullscreen></iframe> 
+0

我明白这一点:你问如何使iframe具有该类型的url更改。 – rvighne

+0

是的,就是这样。我只想更改网址 – user204415

+0

我想从youtube.com获得原始网址 – user204415

回答

0

这将为该类型的任何iframe的工作。

var frames = document.querySelectorAll('iframe[type="text/html"]'); 
for (var i = 0; i < frames.length; i++) { 
    var oldFrame = frames[i]; 

    var re = /http:\/\/widget\.smartycenter\.com\/webservice\/directYoutube\/\d{4}\/([^\/]+)\/640\/360/; 
    var code = re.exec(oldFrame.src)[1]; 
    var src = "//www.youtube.com/embed/" + code; 

    var newFrame = document.createElement('iframe'); 
    newFrame.width = 560; newFrame.height = 315; 
    newFrame.allowfullscreen = true; 
    newFrame.frameborder = 0; 
    newFrame.src = src; 

    oldFrame.parentElement.replaceChild(newFrame, oldFrame); 
} 

见小提琴这里:http://jsfiddle.net/9a9t3/

请务必更改YOUTUBE_CODE在HTML节到你想要的代码。

+0

它不起作用,请在第一篇文章中进行测试。 http://goo.gl/aQFE0I – user204415

+0

@ user204415我不懂西班牙语。你能说英文不起作用吗? – rvighne

+0

好吧,我试图用tampermonkey运行你的代码,它不会改变src。 – user204415