var xZoomStart = 0; var xMouseStart = 0; var newHeight = 0; var newWidth = 0; function mousePosition(ev){ ev = ev || window.event; if(ev.pageX || ev.pageY){ return {x:ev.pageX, y:ev.pageY}; } return { x:ev.clientX + document.body.scrollLeft - document.body.clientLeft, y:ev.clientY + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) }; } function zoomStart(ev){ var mousePos = mousePosition(ev); xMouseStart = mousePos.x; xZoomStart = parseInt($('zoomPointer').style.left || 0); document.onmousemove = zoomMove; document.onmouseup = zoomStop; if(document.all) { ev.cancelBubble = true; ev = false; } else { ev.preventDefault(); } } function zoomMove(ev){ ev = ev || window.event; var mousePos = mousePosition(ev); newX = xZoomStart + mousePos.x - xMouseStart; if(newX < -130) newX = -130; if(newX > 130) newX = 130; $('zoomPointer').style.left = newX + 'px'; newX = Math.round(newX/10)*10; newHeight = startHeight * (130 + newX )/130; newWidth = startWidth * (130 + newX )/130; $('iFrameBody').style.height = newHeight + 'px'; $('iFrameBody').style.width = newWidth + 'px'; $('gameHolder').style.height = newHeight + 'px'; return false; if(document.all) { ev.cancelBubble = true; ev = false; } else { ev.preventDefault(); } } function zoomStop (){ document.onmousemove = null; document.onmouseup = null; }