Changed the DOM placement of the zoomContainer div because my image is within an element that is position absolute. The js now makes the zoomContainer div a child of the body element. The reason for the fix is that the zoomContainer and the lens were offset relative to my image by the distance that my image was offset by the browser window. This fix is only for img tags that are children of elements that are position absolute or relative.