SyntaxError no detectado en JS y posiblemente Wordpress

No estoy muy seguro de por qué mi código está causando esto.

Tengo este script jquery en el encabezado:

<script>
  $(document).ready(function() {
      $('.control').on('click', function(e) {
          e.preventDefault();
          var field = $(this).data('field');
          $('.hider:visible').fadeOut("slow", function() {
              $('#' + field + '-gallery, #' + field + '-tag').fadeIn("slow");
          });
      });

      var randomIndex = Math.floor((Math.random() * 100) + 1) % 3;
      console.log(randomIndex);

      var field = $($('a').get(randomIndex)).data('field');
      $('#' + field + '-gallery, #' + field + '-tag').fadeIn("slow");
  })​;
   </script>

cuando vuelvo a cargar la página, no sucede nada, por lo que parece que el script no se está ejecutando. Cuando inspecciono la página en Chrome, veo que hay este error que está en una pestaña llamada (programa) y está en las primeras líneas:

    if (window.top.require) {
Uncaught SyntaxError: Unexpected token ILLEGAL
    window.top.require("ripple/bootstrap").inject(window, document);}

No sé qué hay en mi código para causar este error. Cuando saco mi guión, desaparece. No estoy muy seguro de si es algo con wordpress o jqueryUI (lo tengo cargado para otro complemento).

preguntado el 27 de julio de 12 a las 16:07

Este parece ser el mismo problema, echa un vistazo stackoverflow.com/questions/5733275/… -

Sí, vi eso, pero no tengo idea de dónde estaría arrojando ese personaje aleatorio o qué. Copié y pegué ese código jquery de JSFiddle, pero estoy perdido para tratar de eliminarlo de alguna manera. -

2 Respuestas

Tiene un carácter invisible ilegal en la última línea entre el ) y ;.

Coloque el cursor después de la ;y comience a retroceder hasta que elimine el ), luego vuelva a escribirlos a ambos.

    })​;
 //  ^^---between these

Notará que mientras retrocede, el cursor no se moverá una vez. Ahí es cuando se elimina el carácter invisible.

Esto sucede cuando se copia/pega código de jsFiddle o quizás de otros sitios similares.

El caracter es el unicode \u200B.

Respondido 27 Jul 12, 17:07

Bueno, eso eliminó el error. Pero todavía no muestra los div que se supone que son visibles. Es una locura cómo se agrega eso allí. Ahora me pregunto si hay algo más flotando allí que podría estar causando que no funcione. ¡Gracias por la ayuda! - ultraloveninja

AFAIK, el código de script que no sabes de dónde viene, es generado por el emulador de Blackberry Ondulación, cuando inserta un script generado, su document.documentElement (ver en GitHub). He visto que este comportamiento causa problemas en muchos de mis proyectos, por ejemplo, se inserta en los resultados de ajax con HTML de tipo de datos y confunde mis selectores, o ensucia más mis respuestas de ajax en combinación con el complemento de formulario jquery (no puedo vincularlo debido a no hay suficiente reputación), etc. ¿Creo que podría estar interfiriendo con su javascript? Espero eso ayude.

Respondido el 14 de Septiembre de 12 a las 10:09

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.