Estoy reuniendo algunas páginas de demostración, y una de las cosas que quiero demostrar implica buscar fragmentos de HTML dinámicamente con el procesamiento posterior. código jQuery sencilla por lo tanto tengo la siguiente manera:Accediendo a las URL relativas a través de "ajax" desde "file: //" contenido
$('#target').load('./content_fragment.html', function() {
$(this).doSomething();
});
estoy haciendo todo esto desde file: // URL porque todo es parte de una presentación que (tal vez) ejecutar desde una unidad flash o una alguna cosa. Por lo tanto, "content_fragment.html" es simplemente otro archivo local, al igual que la página principal que contiene ese código.
Ahora todo esto funciona muy bien desde Firefox o Safari, y otros usos de URL relativos funcionan bien en Chrome (iframe URL "src", imágenes, secuencias de comandos, css, etc), pero Chrome simplemente no va a pagar atención a esas solicitudes ".load()". Si cierro el contenido y lo despliego en un servidor web, y luego lo consigo a través de su URL "http:", entonces Chrome funciona bien. Cuando no funciona, no veo ningún error en la consola de Chrome; simplemente no busca el contenido. Lo probé con Chrome en Linux y XP, con resultados idénticos. (Y Safari o Firefox al mismo archivo: // Las URL siempre hacen lo que espero y cargan el contenido.)
Así que mi pregunta es, ¿esta rareza es solo una peculiaridad de Chrome, o hay algo inherentemente cuestionable sobre XMLHttpRequests y file: // URLs? En otras palabras, ¿Chrome está haciendo lo derecho, lo que significa que los otros navegadores están rotos?
Es por seguridad, no quiere que el código malvado vaya a su HD. – tcooc