Tengo el siguiente código y está funcionando (como de costumbre) en todo menos en IE. Me está dando una llamada inesperada al método o acceso a la propiedad en Jquery y no tengo ni idea de cómo depurarlo. He estado usando la barra de herramientas del desarrollador de IE, que es inútil para este error y simplemente me da una línea no 12 (dentro del script jquery).Error de Javascript IE: llamada inesperada al método o acceso a la propiedad
Cualquier ayuda es muy apreciada v:
<script type="text/javascript">
$(document).ready(function() {
$.history.init(pageload);
$('a[href=' + window.location.hash + ']').addClass('selected');
$('a[rel=ajax]').click(function() {
var hash = this.href;
hash = hash.replace(/^.*#/, '');
$.history.load(hash);
$('a[rel=ajax]').removeClass('selected');
$(this).addClass('selected');
$('.loading').show();
getPage();
return false;
});
});
function pageload(hash) {
if (hash) getPage();
}
function getPage() {
hash = document.location.hash;
hash = hash.replace(/^.*#/, '');
var data = 'page=' + encodeURIComponent(hash);
$.ajax({
url: "index.php",
type: "POST",
data: data,
cache: false,
success: function (html) {
$('.loading').hide();
$('tbody').html(html);
}
});
}
</script>
Aquí es el complemento de la historia: http://plugins.jquery.com/project/history
Y aquí es la demostración que he estado siguiendo: http://plugins.jquery.com/project/history
Aún cambiando window.location volver a document.location no parece hacer la diferencia
Im perdido o n este. Cuando cambio la etiqueta, la invocación sí la publica, por lo que funciona, pero es decir, el diseño está roto y los siguientes enlaces en los que hago clic no se publican. Realmente !! extraño, funciona bien en FF, Opera, etc
he reducido a la etiqueta tbody. ¿Alguna idea de por qué esto está causando un problema? ¿IE no reconoce esta etiqueta? PS Thx tenías razón sobre las cosas que mencionas también –
@Ke: IE reconoce la etiqueta 'tbody', sí. Me acabo de dar cuenta de que estabas haciendo '$ ('tbody'). Html (html)' - ¿tu * realmente * quieres escribir este contenido para cada 'tbody' en la página? ¿Y cuál es el HTML que le estás escribiendo? Es probable que una serie de elementos 'tr' ... IE no le guste demasiado con las filas de la tabla mediante' innerHTML', pero supongo que jQuery lo está manejando (Prototype lo hace y no creo que jQuery sea más retroactivo en esa área, pero no sé jQuery bien). –