Foros del Web » Programando para Internet » Jquery »

Jquery Replace de datos obtenidos por json externo

Estas en el tema de Jquery Replace de datos obtenidos por json externo en el foro de Jquery en Foros del Web. Buenos días. De nuevo me dirijo al foro ya que no encuentro una solución práctica. Soy el administrador de una comunidad mmorpg y estoy intentando ...
  #1 (permalink)  
Antiguo 21/03/2012, 05:36
 
Fecha de Ingreso: mayo-2008
Mensajes: 117
Antigüedad: 16 años, 5 meses
Puntos: 0
Jquery Replace de datos obtenidos por json externo

Buenos días.

De nuevo me dirijo al foro ya que no encuentro una solución práctica.

Soy el administrador de una comunidad mmorpg y estoy intentando añadir una opción al foro la cual añada tooltips con el significado de ciertos términos mmorps.

El objetivo lo consigo, pero cuando hay mucho texto la página se ralentiza hasta límites insospechados.

El problema está en el reemplazo del contenido ya que lo que hago es recoger de mi BD todas las palabras y buscar las mismas en el contenido de los mensajes del foro.

Digamos que para cada palabra:

Código Javascript:
Ver original
  1. for( i=0; i < length; i++){
  2.           replace(data[i]);
  3.         }

Realizo una sustitución de texto

Código Javascript:
Ver original
  1. function replace(data){
  2.         var sRegExInput = new RegExp('\\b'+data+'\\b', 'gi');
  3.         obj.html(obj.html().replace(sRegExInput, "<span class='swtooltips' rel='"+data+"' style='cursor:pointer'>"+data+"</span>"));
  4.        
  5.     }
Aquí teneis un ejemplo, a ver si sabeis como poder aumentar la efectividad. Esperad a que cargue por completo pues puede que se colapse hasta que acabe. Lo siento.

Ver ejemploen JsFiddle
  #2 (permalink)  
Antiguo 26/03/2012, 05:38
 
Fecha de Ingreso: mayo-2008
Mensajes: 117
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: Jquery Replace de datos obtenidos por json externo

Nadie sabe nada? :(

Etiquetas: externo, html, input, js, json, replace
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 23:42.