TypeError: 'indefinido' no es una función (evaluando '$(document)')
- Estoy usando un sitio de WordPress.
- Estoy incluyendo este script en el encabezado.
Cuando se carga el script, aparece este error:
TypeError: 'indefinido' no es una función (evaluando '$(document)')
No tengo idea de qué lo está causando o qué significa.
En Firebug me sale esto:
$ no es una función
Aceptado
Wordpress usa jQuery en modo noConflict de forma predeterminada. Debe hacer referencia a él usando jQuery
como nombre de variable, no $
, por ejemplo, usar
jQuery(document);
en lugar de
$(document);
Puede resumir esto fácilmente en una función autoejecutable para que $
haga referencia a jQuery nuevamente (y también evite contaminar el espacio de nombres global), por ejemplo
(function ($) {
$(document);
}(jQuery));
Utilice jQuery noConflict
. Me hizo maravillas
var example=jQuery.noConflict();
example(function(){
example('div#rift_connect').click(function(){
example('span#resultado').text("Hello, dude!");
});
});
Es decir, suponiendo que haya incluido jQuery en su HTML
<script language="javascript" type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
Pruebe este fragmento:
jQuery(function($) {
// Your code.
})
A mí me funcionó, tal vez a ti también te ayude.