Vale, vale, sé que es una contradicción en términos, pero este es un problema con el que se enfrentan muchos novatos, y en ocasiones, una característica como esta sería útil para poder copiar un js completo en un directorio local, y ejecutarlo desde ahí, sin ser forzado a iniciar un servicio web en el ordenador local.
Cómo puede esto lograrse sin mucho inconveniente o sin cambiar el código?
He creado una función que prueba el protocolo usado por el navegador y decide cómo cargar el fichero requerido con xmlhttprequest o iframe.
Queda advertido de que este es sólo un ejercicio, y no una solución final. Puede ser mejorado, y debe serlo.
El ejemplo está aquí.
Obviamente, esto usará xmlhttprequest, pero si baja este comprimido, y lo descomprime en un directorio local, verá trabajando el método iframe.
El código
function get_content(url,update) { if ( document.location.protocol == "file:" ) { // console.log('local'); var ifr = new IFrame({ src:url, events:{ load: function() { $(update).set('html', this.contentWindow.document.body.innerHTML ); } } }).inject(document.body); } else { // console.log('server'); var myHTMLRequest = new Request.HTML({ update:update, }).get(url); } }
Déjeme saber lo que piensa.





Comments are closed.