var pop_dragging = false;
var pop_target;
var pop_mouseX;
var pop_mouseY;
var pop_mouseposX;
var pop_mouseposY;
var pop_oldfunction;
function popup_display(x)
{
var win = window.open();
for (var i in x) win.document.write(i+' = '+x[i]+'<br>');
}
// ----- popup_mousedown -------------------------------------------------------
function popup_mousedown(e)
{
var ie = navigator.appName == "Microsoft Internet Explorer";
if ( ie && window.event.button != 1) return;
if (!ie && e.button != 0) return;
pop_dragging = true;
pop_target = this['target'];
pop_mouseX = ie ? window.event.clientX : e.clientX;
pop_mouseY = ie ? window.event.clientY : e.clientY;
if (ie)
popup_oldfunction = document.onselectstart;
else popup_oldfunction = document.onmousedown;
if (ie)
document.onselectstart = new Function("return false;");
else document.onmousedown = new Function("return false;");
}
// ----- popup_mousemove -------------------------------------------------------
function pop_mousemove(e)
{
if (!pop_dragging) return;
var ie = navigator.appName == "Microsoft Internet Explorer";
var element = document.getElementById(pop_target);
var mouseX = ie ? window.event.clientX : e.clientX;
var mouseY = ie ? window.event.clientY : e.clientY;
//�ڴ��޸ĵ�������������������������ߵľ��룬��λ����---��ʼ
element.style.left = (element.offsetLeft+mouseX-pop_mouseX)+'px';
element.style.top = (element.offsetTop +mouseY-pop_mouseY)+'px';
//�ڴ��޸ĵ�������������������������ߵľ��룬��λ����---����
pop_mouseX = ie ? window.event.clientX : e.clientX;
pop_mouseY = ie ? window.event.clientY : e.clientY;
}
// ----- popup_mouseup ---------------------------------------------------------
function pop_mouseup(e)
{
if (!pop_dragging) return;
pop_dragging = false;
var ie = navigator.appName == "Microsoft Internet Explorer";
var element = document.getElementById(pop_target);
if (ie)
document.onselectstart = popup_oldfunction;
else document.onmousedown = popup_oldfunction;
}
// ----- popup_exit ------------------------------------------------------------
function pop_exit(e,id)
{
var ie = navigator.appName == "Microsoft Internet Explorer";
var element = null;
if(pop_target ===undefined)
element= document.getElementById('pop'+id);
else
 element= document.getElementById(pop_target);
pop_mouseup(e);
element.style.visibility = 'hidden';
element.style.display = 'none';
}
// ----- popup_show ------------------------------------------------------------
function pop_show(e,id)
{
var ie = navigator.appName == "Microsoft Internet Explorer";
var x = ie ? e.x : e.pageX;
var y = ie ? e.y : e.pageY;		
var element = document.getElementById('pop'+id);
drag_element = document.getElementById('pop_drag'+id);
exit_element = document.getElementById('pop_exit'+id);
element.style.position = "absolute";
element.style.visibility = "visible";
element.style.display = "block";
element.style.left = x-30+'px';
element.style.top = y+'px';
drag_element['target'] = 'pop'+id;
drag_element.onmousedown = popup_mousedown;
exit_element.onclick = popup_exit;
}
// ----- pop_mousepos --------------------------------------------------------
function pop_mousepos(e)
{
var ie = navigator.appName == "Microsoft Internet Explorer";
pop_mouseposX = ie ? window.event.clientX : e.clientX;
pop_mouseposY = ie ? window.event.clientY : e.clientY;
}
// ----- Attach Events ---------------------------------------------------------
if (navigator.appName == "Microsoft Internet Explorer")
document.attachEvent('onmousedown', pop_mousepos);
else document.addEventListener('mousedown', pop_mousepos, false);
if (navigator.appName == "Microsoft Internet Explorer")
document.attachEvent('onmousemove', pop_mousemove);
else document.addEventListener('mousemove', pop_mousemove, false);
if (navigator.appName == "Microsoft Internet Explorer")
document.attachEvent('onmouseup', pop_mouseup);
else document.addEventListener('mouseup', pop_mouseup, false);