日期:2014-05-17  浏览次数:20712 次

使火狐支持outHTML
if (typeof (HTMLElement) != "undefined" && !window.opera) {
	HTMLElement.prototype.__defineGetter__("outerHTML", function() {
		var a = this.attributes, str = "<" + this.tagName, i = 0;
		for (; i < a.length; i++)
			if (a[i].specified)
				str += " " + a[i].name + '="' + a[i].value + '"';
		if (!this.canHaveChildren)
			return str + " />";
		return str + ">" + this.innerHTML + "</" + this.tagName + ">";
	});
	HTMLElement.prototype.__defineSetter__("outerHTML", function(s) {
		var r = this.ownerDocument.createRange();
		r.setStartBefore(this);
		var df = r.createContextualFragment(s);
		this.parentNode.replaceChild(df, this);
		return s;
	});
	HTMLElement.prototype
			.__defineGetter__(
					"canHaveChildren",
					function() {
						return !/^(area|base|basefont|col|frame|hr|img|br|input|isindex|link|meta|param)$/
								.test(this.tagName.toLowerCase());
					});
}