function attachEventListener(_object,_event,_function){
    try{
        _object.addEventListener(_event, _function, false);
    } catch (e) {
        _object.attachEvent("on"+_event, _function);
    } 
}
function detachEventListener(_object,_event,_function){
    try{
        _object.removeEventListener(_event, _function, false);
    } catch (e) {
        _object.detachEvent("on"+_event, _function);
    }
}
var gMovedElement = null;
function moveElementByObj(iObject,iEvent,iWidth,iHeight){ //Element must have "position:absolute" to style property
    if(gMovedElement){ gMovedElement.style.zIndex = -1; };
    gMovedElement = iObject;
    iObject.style.zIndex = 36;
    wichbtn = (navigator.userAgent.toLowerCase().indexOf('msie') != -1 ? (iEvent.button==1?true:false) : (iEvent.button==0?true:false)); //Check for left mouse button on IE or FF
    var offsetx = iEvent.clientX, offsety = iEvent.clientY, tempx = iObject.offsetLeft, tempy = iObject.offsetTop;
    if(wichbtn && offsety <= (tempy + iHeight) && offsetx <= (tempx + iWidth)){ //Check for left button, width and height
        attachEventListener(document,"mousemove",moveElement);
        attachEventListener(document,"mouseup",detachElement);
        return false; //Stop selecting text
    }
    function detachElement(){
        detachEventListener(document,"mousemove",moveElement);
        detachEventListener(document,"mouseup",detachElement);
    }
    function moveElement(event){
            iObject.style.top = tempy + event.clientY - offsety + "px"; //Move element by Y
            iObject.style.left = tempx + event.clientX - offsetx + "px"; // Move element by X
    }
}
