MYNOTE_MENU.js 1.88 KB
Newer Older
Thitichaipun Wutthisak committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
function at_attach(parent, child, showtype, position, cursor){
	p = document.getElementById(parent);
	c = document.getElementById(child);

	p["at_parent"]     = p.id;
	c["at_parent"]     = p.id;
	p["at_child"]      = c.id;
	c["at_child"]      = c.id;
	p["at_position"]   = position;
	c["at_position"]   = position;

	c.style.position   = "absolute";
	c.style.visibility = "hidden";

	if (cursor != undefined) p.style.cursor = cursor;

		switch (showtype){
			case "click":
				p.onclick     = at_click;
				p.onmouseout  = at_hide;
				c.onmouseover = at_show;
				c.onmouseout  = at_hide;
				break;
			case "hover":
				p.onmouseover = at_show;
				p.onmouseout  = at_hide;
				c.onmouseover = at_show;
				c.onmouseout  = at_hide;
				break;
			}
}

function at_display(x){
	win = window.open();
	for (var i in x) win.document.write(i+' = '+x[i]+'<br>');
}

function at_show_aux(parent, child){
	var p = document.getElementById(parent);
	var c = document.getElementById(child);

	var top  = (c["at_position"] == "y") ? p.offsetHeight+2 : 0;
	var left = (c["at_position"] == "x") ? p.offsetWidth +2 : 0;

	for (; p; p = p.offsetParent){
		top  += p.offsetTop;
		left += p.offsetLeft;
	}

	c.style.position   = "absolute";
	c.style.top        = top +'px';
	c.style.left       = left+'px';
	c.style.visibility = "visible";
}
			
function at_show(){
	p = document.getElementById(this["at_parent"]);
	c = document.getElementById(this["at_child" ]);

	at_show_aux(p.id, c.id);

	clearTimeout(c["at_timeout"]);
}
			
function at_hide(){
	c = document.getElementById(this["at_child"]);

	c["at_timeout"] = setTimeout("document.getElementById('"+c.id+"').style.visibility = 'hidden'", 100);
}

function at_click(){
	p = document.getElementById(this["at_parent"]);
	c = document.getElementById(this["at_child" ]);

	if (c.style.visibility != "visible") at_show_aux(p.id, c.id);
		else c.style.visibility = "hidden";

	return false;
}