如果类型= "text/html",如何将一个 iframe 替换为另一个 iframe?



我有这个:

<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>

这将适用于该类型的任何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/

确保将html部分中的youtube_code更改为所需的代码。

最新更新