En respuesta a:
Ay, JavaScript simplemente no es capaz de extraer las propiedades de la imagen que necesitarías para hacer algo como esto. Sin embargo, puede haber salvación en la forma del elemento HTML combinado con un poco de scripting del lado del servidor. ...
< ? (open php)
$large_image = 'path/to/large_image';
$full_w = imagesx($large_image);
$full_h = imagesy($large_image);
(close php) ? >
Esto se puede hacer en Javascript, Google sólo un poco:
var newimage = new Image();
newimage.src = document.getElementById('background').src;
var height = newimage.height;
var width = newimage.width;
Esto genera una nueva imagen a partir de una existente y la captura de esta manera en java script original altura y anchura propiedades de la imagen original (no el id'ed como fondo
En respuesta a:.
Las propiedades de ancho/alto del objeto de imagen del documento son de solo lectura. Sin embargo, si pudiera cambiarlos, solo aplastaría los marcos, no cortaría los marcos como lo desea. El tipo de manipulación de imagen que desea no se puede hacer con javascript en el lado del cliente. Sugiero cortar las imágenes en el servidor, o superponer un div en la imagen para ocultar las partes que no desea visualizar.
...
var newimage = new Image();
newimage.src = document.getElementById('background').src;
var height = newimage.height;
var width = newimage.width;
newimage.style.height = '200px';
newimage.style.width = '200px';
newimage.height = '200px';
newimage.width = '200px';
y si quería:
newimage.setAttribute('height','200px');
El duplicó newimage.style.height y se necesita newimage.height en determinadas circunstancias con el fin de asegurarse de que un IE se Comprenda a tiempo que la imagen cambiará de tamaño (lo renderizará inmediatamente después, y el procesamiento interno de IE es demasiado lento para eso).
Gracias por la secuencia de comandos anterior Modifiqué e implementé en http://morethanvoice.net/m1/reader13.php (haga clic con el botón secundario en el menú ... mouseover zoom prestado) corregido incluso en IE, pero como notará el procesamiento de imagen de mousemove demasiado rápido para el IE antiguo, representa la posición pero solo una vez la imagen. En cualquier caso, cualquier buena idea es bienvenida.
Gracias a todos por su atención, esperamos que los códigos anteriores puedan ayudar a alguien ...
Claudio Klemp http://morethanvoice.net/m1/reader13.php
MUY FRÍO. Funcionó casi al instante. El único problema con su código es que img.style.top está usando el parámetro 'x' cuando debería estar usando 'y', lo mismo para la izquierda. ¡Aparte de eso, funcionó como un encanto! –
D'oh! Déjame arreglar eso. :-) –
Solo por diversión, también he cambiado setViewport para que el ancho y alto se puedan omitir si no quieres cambiarlos. –