Topic awaiting preservation: Image zoom script help... |
|
---|---|
Author | Thread |
Bipolar (III) Inmate From: Kansas City, MO , USA |
posted 09-09-2005 07:20
Hopefully this is a easy fix... I have this script that makes any image with the class tag of zoom the ability to be zoomed by clicks: code: function findDOM(objectId) { if (document.getElementById) { return (document.getElementById(objectId));} if (document.all) { return (document.all[objectId]);} } function zoom(type,imgx,iWidthIn,iHeightIn) { imgd = findDOM(imgx); if (type=="+" && imgd.width >= iWidthIn) { imgd.width = 2*imgd.width; imgd.height = 2*imgd.height; } if (type=="-" && imgd.width > iWidthIn) { imgd.width = imgd.width/2; imgd.height = imgd.height/2; } } var zoomClass = "zoom"; var normalWidth = new Array(); var normalHeight = new Array(); var getZoom = new Array(); function initZoom() { var allImgs = new Array(); allImgs = document.body.getElementsByTagName('IMG'); for ( i = 0; i < allImgs.length; i++ ) { if (allImgs[i].className.toLowerCase() == zoomClass.toLowerCase()) getZoom[getZoom.length] = allImgs[i]; } for (i=0; i < getZoom.length; i++) { normalWidth[i] = getZoom[i].width; normalHeight[i] = getZoom[i].height; getZoom[i].width = normalWidth[i]; getZoom[i].height = normalHeight[i]; if (document.addEventListener) { getZoom[i].addEventListener('click', zoomImg, false); } else { getZoom[i].onclick = zoomImg; } } } function zoomImg(e) { if (e) { ctrlPress = e.ctrlKey; shiftPress = e.shiftKey; altPress = e.altKey; } else { ctrlPress = event.ctrlKey; shiftPress = event.shiftKey; altPress = event.altKey; } for (i=0;i<getZoom.length;i++) { if (this == getZoom[i]) imgToZoom = i; } if (altPress) { getZoom[imgToZoom].width = normalWidth[imgToZoom]; getZoom[imgToZoom].height = normalHeight[imgToZoom]; } else if (ctrlPress || shiftPress) { if (getZoom[imgToZoom].width > normalWidth[imgToZoom]) { getZoom[imgToZoom].width -= normalWidth[imgToZoom]; getZoom[imgToZoom].height -= normalHeight[imgToZoom]; } } else { getZoom[imgToZoom].width += normalWidth[imgToZoom]; getZoom[imgToZoom].height += normalHeight[imgToZoom]; } }
|
Lunatic (VI) Mad Scientist From: Massachusetts, USA |
posted 09-22-2005 22:32 |
Maniac (V) Mad Scientist From: 100101010011 <-- right about here |
posted 09-23-2005 01:21
Um this is a bit wierd. |
Bipolar (III) Inmate From: Kansas City, MO , USA |
posted 09-23-2005 08:48
Here is the example: http://www.ensellitis.com/index.php?p=197 |
Lunatic (VI) Mad Scientist From: Massachusetts, USA |
posted 09-23-2005 09:23
Right, I don't know why I thought position:relative would work. It shouldn't. |
Maniac (V) Mad Scientist From: :morF |
posted 09-23-2005 14:19
unless you put the text, as well, inside the containing DIV, possibly placing it inside its own DIV to keep it the same width constantly. |