(function() {

    var ghost,
        inc = 1,
        interval;

    var gx = 500,
        gy = 500;

    var mx = 0,
        my = 0;

    var init = function() {

        ghost = document.getElementById('ghost');
        ghost.style.display = '';
        document.onmousemove = setXY;

        setInterval(moveGhost, 20);

    }

    var getXY = function(e) {

        if (!e) {
            e = window.event;
        }

        if (e.pageX) {
            return [e.pageX, e.pageY];
        } else if (e.clientX) {
            return [e.clientX + (document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft), e.clientY + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop)];
        } else {
            return [0, 0];
        }

    }

    var moveGhost = function() {

        if (gx < mx) {
            gx += inc;
        } else if (gx > mx) {
            gx -= inc;
        }

        if (gy < my) {
            gy += inc;
        } else if (gy > my) {
            gy -= inc;
        }

        ghost.style.left = gx + 'px';
        ghost.style.top = gy + 'px';

    }

    var setXY = function(e) {

        var coords = getXY(e);

        mx = coords[0] - 22;
        my = coords[1] - 24;

    }

    init();

})();

/*
// Simple follow the mouse script

var divName = 'mydiv'; // div that is to follow the mouse
                       // (must be position:absolute)
var offX = 15;          // X offset from mouse position
var offY = 15;          // Y offset from mouse position

function mouseX(evt) {if (!evt) evt = window.event; if (evt.pageX) return evt.pageX; else if (evt.clientX)return evt.clientX + (document.documentElement.scrollLeft ?  document.documentElement.scrollLeft : document.body.scrollLeft); else return 0;}
function mouseY(evt) {if (!evt) evt = window.event; if (evt.pageY) return evt.pageY; else if (evt.clientY)return evt.clientY + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop); else return 0;}

function follow(evt) {if (document.getElementById) {var obj = document.getElementById(divName).style; obj.visibility = 'visible';
obj.left = (parseInt(mouseX(evt))+offX) + 'px';
obj.top = (parseInt(mouseY(evt))+offY) + 'px';}}
document.onmousemove = follow;
                    
*/
