Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Porque chrome no reconoce este script..?

Estas en el tema de Porque chrome no reconoce este script..? en el foro de Frameworks JS en Foros del Web. Hola tengo el siguiente script para leer mi XML: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código Javascript : Ver original $ ( document ) . ready ( function ( ...
  #1 (permalink)  
Antiguo 02/05/2012, 14:04
Avatar de Radi30  
Fecha de Ingreso: abril-2012
Mensajes: 26
Antigüedad: 12 años, 7 meses
Puntos: 0
Porque chrome no reconoce este script..?

Hola
tengo el siguiente script para leer mi XML:
Código Javascript:
Ver original
  1. $(document).ready(function () {
  2.     $.ajax({
  3.         type: "GET",
  4.         url: "books.xml",
  5.         dataType: ($.browser.msie) ? 'text' : 'xml',
  6.         success: recon
  7.     });
  8. });
  9.  
  10. function recon(data) {
  11.     var xml;
  12.     if(typeof data == 'string'){
  13.       xml = new ActiveXObject('Microsoft.XMLDOM');
  14.       xml.async = false;
  15.       xml.loadXML(data);
  16.     }
  17.     else {
  18.       xml = data;
  19.     }
  20.     xmlParser(xml);
  21.   }
  22.  
  23. function xmlParser(xml) {
  24.     $('#load').fadeOut();
  25.     $(xml).find("Book").each(function () {
  26.         $(".main").append('<div class="book"><div class="title">' + $(this).find("Title").text() + '</div><div class="description">' + $(this).find("Description").text() + '</div><div class="date">Published ' + $(this).find("Date").text() + '</div></div>');
  27.         $(".book").fadeIn(1000);
  28.     });
  29. }

Estoi haciendo el script desde un ejemplo que encontre por internet pero adecuandolo a mis necesidades... el caso es que funciona en firefox y internet explorer... pero en chrome se quena cargando el contenido... se atasca ahi.

¿Alguna idea?
  #2 (permalink)  
Antiguo 02/05/2012, 14:11
Avatar de Dafonz  
Fecha de Ingreso: octubre-2009
Mensajes: 127
Antigüedad: 15 años, 1 mes
Puntos: 36
Respuesta: Porque chrome no reconoce este script..?

¿No estas probando localmente el ajax?, también no se si tenga que ver la verdad no he investigado pero para "parsear" el xml siempre he usado:

Código Javascript:
Ver original
  1. function parseXML(xml) {
  2.     if (window.DOMParser){
  3.         parser=new DOMParser();
  4.         xmlDoc=parser.parseFromString(xml,"text/xml");
  5.     }else  {
  6.         xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
  7.         xmlDoc.async=false;
  8.         xmlDoc.loadXML(xml);
  9.     }
  10.     return xmlDoc;
  11. }
y es para segun el navegador.. Aunque viendo que usas JQuery desde un principio te recomiendo que ya que estas incluyendo toda la librería le saques provecho y uses el parser que trae.
  #3 (permalink)  
Antiguo 02/05/2012, 14:18
Avatar de Naahuel  
Fecha de Ingreso: marzo-2011
Ubicación: localhost
Mensajes: 796
Antigüedad: 13 años, 8 meses
Puntos: 192
Respuesta: Porque chrome no reconoce este script..?

Probá los ejemplos en este hilo:
http://www.forosdelweb.com/f127/xml-jquery-990607/

Particularmente este:

Código Javascript:
Ver original
  1. $(function(){
  2.     //obtener el XML
  3.     var $pedido = $.ajax({
  4.         url : 'videos.xml',
  5.         contentType : 'xml'
  6.     });
  7.  
  8.     //cuando finalice el pedido
  9.     $pedido.done(function(resultadoXML){
  10.         //No es necesario parseXML si se usa contentType xml en $.ajax
  11.         //var xmlDoc = $.parseXML( resultadoXML );
  12.         var $xml = $( resultadoXML );
  13.        
  14.         //Obtener todos los videos
  15.         var $videos = $xml.find('video');
  16.        
  17.         var $cont = $('#videos');
  18.         //listarlos todos
  19.         $videos.each(function(){
  20.             var $elem = $(this);
  21.             var titulo  = $elem.find('title').text();
  22.             var url = $elem.find('url').text();
  23.             var desc = $elem.find('description').text();
  24.             var thumb = $elem.find('thumbnail_small').text();
  25.            
  26.             $cont.append('<li><h2><a href="'+url+'">'+titulo+'</a></h2><p><img src="'+thumb+'" /></p><p>'+desc+'</p></li>');
  27.         });
  28.        
  29.     });
  30. });

Online: http://jsbin.com/ixulub

Funciona perfectamente en todos los navegadores en que lo probé.
__________________
nahueljose.com.ar
  #4 (permalink)  
Antiguo 02/05/2012, 14:34
Avatar de Radi30  
Fecha de Ingreso: abril-2012
Mensajes: 26
Antigüedad: 12 años, 7 meses
Puntos: 0
Respuesta: Porque chrome no reconoce este script..?

Muchas gracias a los dos!
Voi a ponerme a probar con estos scripts y ejemplos que me habeis pasado.
Y si, estoi probandolo localmente... tendria que tener algo en cuenta Dafonz?
tengo que decir que soy bastante novado con AJAX

saludos
  #5 (permalink)  
Antiguo 02/05/2012, 14:37
Avatar de Dafonz  
Fecha de Ingreso: octubre-2009
Mensajes: 127
Antigüedad: 15 años, 1 mes
Puntos: 36
Respuesta: Porque chrome no reconoce este script..?

Si, cuando lo pruebas localmente te arroja este error:
Código Javascript:
Ver original
  1. XMLHttpRequest cannot load file:///RUTA/books.xml. Origin null is not allowed by Access-Control-Allow-Origin.
No es que no funcione pero el origen no sirve en chrome con todo lo que empiece en file (manda null en origen). tendrias que hacer algo de lo que se menciona en el reporte del issue

Última edición por Dafonz; 02/05/2012 a las 14:43

Etiquetas: ajax, chrome, funcion, reconoce
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:16.