返回列表 发新帖

解决firefox下不支持outerhtml问题代码分享

593.2k 9
swmozowtfl 发表于 2015-7-10 22:25:34|湖北 | 查看全部 阅读模式
代码很简单,如下:  w  G, S1 U, z5 e( ~
代码如下:2 V8 v, I/ o2 k0 s
var pro = window.htmlelement.prototype;+ U, g- M, ]2 K- q+ d
pro.__definegetter__(outerhtml, function(){/ d! B- p' d5 G$ R# \; `8 y, l1 {
var str = < + this.tagname;* F0 \$ k- Z) ~; C! X9 d0 R
var a = this.attributes;* }; @  b8 X. p% V5 d& X3 W
for(var i = 0, len = a.length; i < len; i++){
6 y* E" Y2 ^  Dif(a.specified){( M# W( N0 b. T( M8 K
str +=   + a.name + '=' + a.value + '';4 e7 T3 W) e1 L" Y+ M
}
" u  y; v2 v( Q& t, Z}  c' b" c  N3 s% g
if(!this.canhavechildren){7 o7 x! o* B6 L" I. ]4 E% s, l
return str +  />;
8 x& M* ~  U9 X}
, E4 \/ v) s6 N" D' Q2 I# xreturn str + > + this.innerhtml + </ + this.tagname + >;
9 s6 @2 o8 T- e2 O0 v- f});& Z0 d3 s- b; x2 U  F2 B
pro.__definesetter__(outerhtml, function(s){
% R/ s$ e* R* [) t9 {var r = this.ownerdocument.createrange();7 v) h' v" ^2 e( x4 {
r.setstartbefore(this);! r2 ~$ U7 N  x/ t: A+ H
var df = r.createcontextualfragment(s);
2 a: o0 B5 B* z9 @  Ethis.parentnode.replacechild(df, this);  @( G/ U" B5 W" O
return s;( n7 t% t8 e2 [: ^( {' L
});
/ U. \) L6 @# Spro.__definegetter__(canhavechildren, function(){
3 e4 s2 e9 ]# O/ ^2 [; E6 Jreturn !/^(area|base|basefont|col|frame|hr|img|br|input|isindex|link|meta|param)$/.test(this.tagname.tolowercase());0 ~0 n. y1 E5 x3 [" v: P, O# h8 P
});
; p" ?# t/ R" I( e$ [8 A% o& _# t/ l# p0 e: i9 h& k2 T
更多网页制作信息请查看: 网页制作

回复|共 9 个

wwdu926a 发表于 2015-10-2 18:28:45|美国 | 查看全部
我想骂我自己
mwxny 发表于 2015-10-2 18:28:59|美国 | 查看全部
宁死不屈.....
Acropozelan 发表于 2015-10-2 18:28:28|台湾 | 查看全部
原来...发神经是这样的啊...
mwxny 发表于 2015-10-2 18:27:38|美国 | 查看全部
什么啊
bqtklouu 发表于 2015-10-2 18:28:47|INNA | 查看全部
其实今天baidu 又 抽风了
bqtklouu 发表于 2016-3-4 17:42:24|俄罗斯 | 查看全部
做为老人!在吧里我都懒的都不想说话!送完经验我就走!
mwxny 发表于 2016-3-4 17:43:28|INNA | 查看全部
我又回复了
bqtklouu 发表于 2016-3-4 17:42:19|美国 | 查看全部
好吧...那你说...
seazvyt 发表于 2016-3-4 17:42:56|马来西亚 | 查看全部
老天不公啊.....

回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

得知互动是一个融创意、设计、开发、营销、生活、互联网于一体的专业交流分享平台。
Copyright © 2026 站长技术交流论坛|互联网技术交流平台 版权所有 All Rights Reserved. Powered by Discuz! X5.0 鄂ICP备15006301号-5|鄂公网安备 42018502006730号
关灯 在本版发帖 扫一扫添加QQ客服 返回顶部
快速回复 返回顶部 返回列表