解决firefox下不支持outerhtml问题代码分享
代码很简单,如下:代码如下:
var pro = window.htmlelement.prototype;
pro.__definegetter__(outerhtml, function(){
var str = < + this.tagname;
var a = this.attributes;
for(var i = 0, len = a.length; i < len; i++){
if(a.specified){
str += + a.name + '=' + a.value + '';
}
}
if(!this.canhavechildren){
return str +/>;
}
return str + > + this.innerhtml + </ + this.tagname + >;
});
pro.__definesetter__(outerhtml, function(s){
var r = this.ownerdocument.createrange();
r.setstartbefore(this);
var df = r.createcontextualfragment(s);
this.parentnode.replacechild(df, this);
return s;
});
pro.__definegetter__(canhavechildren, function(){
return !/^(area|base|basefont|col|frame|hr|img|br|input|isindex|link|meta|param)$/.test(this.tagname.tolowercase());
});
更多网页制作信息请查看: 网页制作 什么啊 原来...发神经是这样的啊... 我想骂我自己 其实今天baidu 又 抽风了 宁死不屈..... 好吧...那你说... 做为老人!在吧里我都懒的都不想说话!送完经验我就走! 老天不公啊..... 我又回复了
页:
[1]