// JavaScript Document
function defPosition(event) {
if (!event) var event = window.event;
    var x = y = 3;
    if (document.attachEvent != null) { // Internet Explorer & Opera
        x = event.clientX + (document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft);
        y = event.clientY + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);
    } else if (!document.attachEvent && document.addEventListener) { // Gecko
        x = event.clientX + window.scrollX;
        y = event.clientY + window.scrollY;
    } else {
        // Do nothing
    }
    return {x:x, y:y};
}

function defScroll() {
    var x = y = 3;
        x = (document.documentElement.scrollLeft ? document.documentElement.scrollLeft : (document.body.scrollLeft ? document.body.scrollLeft : window.scrollX));
        y = (document.documentElement.scrollTop ? document.documentElement.scrollTop : (document.body.scrollTop ? document.body.scrollTop : window.scrollY));
		x=x ? x : 0;
		y=y ? y : 0;
    return {x:x, y:y};
}

function screenSize() {
    var w, h; // Объявляем переменные, w - длина, h - высота
    w = (window.innerWidth ? window.innerWidth : (document.documentElement.clientWidth ? document.documentElement.clientWidth : document.body.offsetWidth));
    h = (window.innerHeight ? window.innerHeight : (document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.offsetHeight));
    return {w:w, h:h}; 
}

function absPosition(obj) { 
      var x = y = 0; 
      while(obj) { 
            x += obj.offsetLeft; 
            y += obj.offsetTop; 
            obj = obj.offsetParent; 
      } 
      return {x:x, y:y}; 
}

document.write('<div id="eldivshow" class="eldivshow" onclick="this.style.visibility=\'hidden\'">div</div>');
var eldivshow=document.getElementById('eldivshow');

function showdivmsg(obj,msg){
eldivshow.style.visibility='hidden';
eldivshow.style.top="0px";
eldivshow.style.left="0px";
eldivshow.innerHTML=msg;
var showxy=absPosition(obj);
var sscreenSize=screenSize();
var sdefScroll=defScroll();
var x=showxy.x+(obj.offsetWidth-eldivshow.offsetWidth)/2;
var y=showxy.y+obj.offsetHeight;
if((x+eldivshow.offsetWidth)>=sscreenSize.w+sdefScroll.x-30){x=x-(x+eldivshow.offsetWidth-sscreenSize.w-sdefScroll.x)-30;}
if((x)<=sdefScroll.x+30){x=x-(x-sdefScroll.x)+30;}
if((y+eldivshow.offsetHeight)>=sscreenSize.h+sdefScroll.y){y=y-eldivshow.offsetHeight-obj.offsetHeight;}
eldivshow.style.top=y+"px";
eldivshow.style.left=x+"px";
eldivshow.style.visibility='visible';
}

function getshow(url,event,obj){
showdivmsg(obj,'<img src="'+url+'" width="150" />');
}

function gethide(url,event,obj){
eldivshow.style.visibility='hidden';
}


