User:Jason5ayers/monobook.js

module("Gerbrant.gui.htmlEdit", function(html, width, height, onload) {	function handleEvent(element, event, handler)	{		if(element.addEventListener)			element.addEventListener(event, handler, false);		else if(element.attachEvent)			element.attachEvent("on" + event, handler);	}	var self = this, iframe = document.createElement("IFRAME"), doc;	iframe.src = "http://en.wikipedia.org/w/index.php?title=User:Gerbrant/EmptyPage&dontcountme=s";	if(width) iframe.style.width = width;	else iframe.style.width = "100%";	if(height) iframe.style.height = height;	else iframe.style.height = "10em";	handleEvent(iframe, "load", function {		if(doc && doc.designMode); else {			doc = iframe.contentWindow.document; doc.designMode = "on"; }		if(self.setHTML) return; /*			In IE, we have to wait for the second load event. * The first load event will be for the uneditable document, you see. * When we turn editable on, a second load event is fired. */		try {			doc.body.innerHTML = html; doc.body.style.cssText = "background:white;font-size:100%"; }catch(e){return;} self.setHTML = function(newhtml) {			doc.body.innerHTML = newhtml; }		self.getHTML = function {			return doc.body.innerHTML; }		if(onload) onload; });	this.getElement = function	{		return iframe;	} });