⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 popupwin.js

📁 JSP开发的博客管理系统,使用struts+hibernate+AJAX技术
💻 JS
字号:
// (c) dynarch.com 2003-2004// Distributed under the same terms as HTMLArea itself.function PopupWin(editor, title, handler, initFunction) {	this.editor = editor;	this.handler = handler;	var dlg = window.open("", "__ha_dialog",			      "toolbar=no,menubar=no,personalbar=no,width=600,height=600,left=20,top=40" +			      "scrollbars=no,resizable=no");	this.window = dlg;	var doc = dlg.document;	this.doc = doc;	var self = this;	var base = document.baseURI || document.URL;	if (base && base.match(/(.*)\/([^\/]+)/)) {		base = RegExp.$1 + "/";	}	if (typeof _editor_url != "undefined" && !/^\//.test(_editor_url)) {		// _editor_url doesn't start with '/' which means it's relative		// FIXME: there's a problem here, it could be http:// which		// doesn't start with slash but it's not relative either.		base += _editor_url;	} else		base = _editor_url;	if (!/\/$/.test(base)) {		// base does not end in slash, add it now		base += '/';	}	this.baseURL = base;	doc.open();	var html = "<html><head><title>" + title + "</title>\n";	// html += "<base href='" + base + "htmlarea.js' />\n";	html += "<style type='text/css'>@import url(" + base + "htmlarea.css);</style></head>\n";	html += "<body class='dialog popupwin' id='--HA-body'></body></html>";	doc.write(html);	doc.close();	// sometimes I Hate Mozilla... ;-(	function init2() {		var body = doc.body;		if (!body) {			setTimeout(init2, 25);			return false;		}		dlg.title = title;		doc.documentElement.style.padding = "0px";		doc.documentElement.style.margin = "0px";		var content = doc.createElement("div");		content.className = "content";		self.content = content;		body.appendChild(content);		self.element = body;		initFunction(self);		dlg.focus();	};	init2();};PopupWin.prototype.callHandler = function() {	var tags = ["input", "textarea", "select"];	var params = new Object();	for (var ti in tags) {		var tag = tags[ti];		var els = this.content.getElementsByTagName(tag);		for (var j = 0; j < els.length; ++j) {			var el = els[j];			var val = el.value;			if (el.tagName.toLowerCase() == "input") {				if (el.type == "checkbox") {					val = el.checked;				}			}			params[el.name] = val;		}	}	this.handler(this, params);	return false;};PopupWin.prototype.close = function() {	this.window.close();};PopupWin.prototype.addButtons = function() {	var self = this;	var div = this.doc.createElement("div");	this.content.appendChild(div);	div.className = "buttons";	for (var i = 0; i < arguments.length; ++i) {		var btn = arguments[i];		var button = this.doc.createElement("button");		div.appendChild(button);		button.innerHTML = HTMLArea.I18N.buttons[btn];		switch (btn) {		    case "ok":			button.onclick = function() {				self.callHandler();				self.close();				return false;			};			break;		    case "cancel":			button.onclick = function() {				self.close();				return false;			};			break;		}	}};PopupWin.prototype.showAtElement = function() {	var self = this;	// Mozilla needs some time to realize what's goin' on..	setTimeout(function() {		var w = self.content.offsetWidth + 4;		var h = self.content.offsetHeight + 4;		// size to content -- that's fuckin' buggy in all fuckin' browsers!!!		// so that we set a larger size for the dialog window and then center		// the element inside... phuck!		// center...		var el = self.content;		var s = el.style;		// s.width = el.offsetWidth + "px";		// s.height = el.offsetHeight + "px";		s.position = "absolute";		s.left = (w - el.offsetWidth) / 2 + "px";		s.top = (h - el.offsetHeight) / 2 + "px";		if (HTMLArea.is_gecko) {			self.window.innerWidth = w;			self.window.innerHeight = h;		} else {			self.window.resizeTo(w + 8, h + 35);		}	}, 25);};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -