假设我想将所有<img>标签更改<iframe>为页面上的标签.javascript可以用于此目的吗?
有没有办法改变实际的标签类型,或者我必须首先删除<img>然后创建<iframe>,如果是这样,我如何确保新标签与旧标签具有相同的容器等?
执行此类替换的最简单,最友好的方式是什么?
虽然使用像这样的库更方便jQuery,但您可以不使用这样的库来完成此操作(替换元素,而不更改类型):
示例: http: //jsfiddle.net/BvSvb/
var imgs = document.getElementsByTagName('img');
var i = imgs.length;
var parent;
var iframe = document.createElement( 'iframe' );
var currFrame;
while( i-- ) {
currFrame = iframe.cloneNode( false );
currFrame.setAttribute( 'src', imgs[ i ].getAttribute( 'src' ) );
parent = imgs[ i ].parentNode;
parent.insertBefore( currFrame, imgs[ i ] );
parent.removeChild( imgs[ i ] );
}
Run Code Online (Sandbox Code Playgroud)