/* ¸ÞÀÎ ½ºÅ©·Ñ ½ºÅ©¸³Æ® */ function addEvent(elm, evType, fn, capture) { if( !capture ) var capture = true; if(elm.addEventListener) { elm.addEventListener(evType, fn, capture); return true; } else if(elm.attachEvent) { var r = elm.attachEvent('on' + evType, fn); return r; } else { elm['on' + evType] = fn; } } var objScroll = null; var tokenPos = 0, startPosWindow = 0; var startEventPos = startPosWindow = []; function onMouseDown(evt) { evt = window.event || evt; objTmp = evt.srcElement || evt.target; //if( typeof console != 'undefined' ) console.log(objTmp); var outoffsetHeight = document.getElementById('main_hp_zone_list').offsetHeight; var inoffsetHeight = document.getElementById('real_contents').offsetHeight; //if( typeof console != 'undefined' ) console.log(inoffsetHeight, outoffsetHeight); //ie6 À϶§ offsetHeight °ªÀ» ÀüÇô´Ù¸£°Ô °¡Á®¿À´Â ¹ö±×¶§¹®¿¡ °íÁ¤°ªÀ¸·Î ¸¸µë if( navigator.appVersion.indexOf("MSIE 6") > -1) outoffsetHeight=211; pos = inoffsetHeight - outoffsetHeight; tokenPos = outoffsetHeight / pos; // check if( objTmp.className != 'main_scroll' ) return; objScroll = objTmp; startEventPos = evt.clientY; startPosWindow = objScroll.offsetTop; // cursor objScroll.style.cursor = 'n-resize'; // set event document.documentElement.onmousemove = onMouseMove; document.documentElement.onmouseup = onMouseUp; // block - select element document.documentElement.onselectstart = function(){ return false; }; document.documentElement.style.MozUserSelect = 'none'; } function onMouseMove(evt) { // check evt = window.event || evt; if( objScroll == null ) return; if( objScroll.className != 'main_scroll' ) return; // »óÇÏÀ§Ä¡ var Y = startPosWindow + evt.clientY - startEventPos; //if( typeof console != 'undefined' ) console.log('Y=', Y); // »óÇѼ± üũ if( Y < 0 ) Y = 0; else if( Y > 180 ) Y = 180; objScroll.style.top = Y + 'px'; // ·¹À̾ƿô°ü°è¿¡¼­ top ÀÌ 81 ¿´À»¶§ Áß½ÉÀ̹ÌÁö¿Í Àß ¾î¿ï¸²;; var calcTOP = (Y / tokenPos * 1.2); var TOP = calcTOP > 96 ? 96 : calcTOP; // contents À§Ä¡ //console.log(tokenPos); document.getElementById('main_hp_zone_list').style.top = -(TOP) + 'px'; } function onMouseUp(evt) { // cursor objScroll.style.cursor = ''; objScroll = null; // delete event document.documentElement.onmousemove = null; document.documentElement.onmouseup = null; // nonblock - select element document.documentElement.onselectstart = null; document.documentElement.style.MozUserSelect = null; } deltaSumWheel = 0; function handle(delta) { deltaSumWheel -= (delta * 8.3); //if( typeof console != 'undefined' ) console.log(deltaSumWheel); // »óÇѼ± üũ if( deltaSumWheel < 0 ) deltaSumWheel = 0; else if( deltaSumWheel > 97 ) deltaSumWheel = 97; //else if( deltaSumWheel > 81.7 ) deltaSumWheel = 81.7; document.getElementById('main_hp_zone_list').style.top = -(deltaSumWheel) + 'px'; document.getElementById('main_hp_zone_scrollbar').style.top = deltaSumWheel * 1.85 + 'px'; } function wheel(event) { var delta = 0; if (!event) event = window.event; if (event.wheelDelta) { delta = event.wheelDelta/120; if (window.opera) delta = -delta; } else if (event.detail) { delta = -event.detail/3; } if (delta) handle(delta); if( event.preventDefault ) event.preventDefault(); event.returnValue = false; } function overWheelHandler(mode, evt) { evt = window.event || evt; obj = evt.srcElement || evt.target; if( typeof console != 'undefined' ) console.log('mode=', mode); if( typeof console != 'undefined' ) console.log(obj.parentNode.tagName); //if( obj.offsetParent.id != 'main_hp_zone_list') return; switch(mode) { case 1: if (window.addEventListener) { obj.addEventListener('DOMMouseScroll', wheel, false); } obj.onmousewheel = wheel; break; case 2: return; if (window.removeEventListener) { obj.removeEventListener('DOMMouseScroll', wheel, false); } obj.onmousewheel = null; break; } }; addEvent(window, 'load', function() { var obj = document.getElementById('main_hp_zone_list'); if (window.addEventListener) { obj.addEventListener('DOMMouseScroll', wheel, false); } obj.onmousewheel = wheel; });