Voici mon code:jQuery setInterval ne fonctionne pas
$(document).ready(function() {
var interval = setInterval("change_height()", 500);
var height;
function change_height() {
height = parseInt(window.location.hash);
$('#message_body').height(height);
alert("");
clearInterval(interval);
}
});
pour une raison quelconque la fonction change_height() est tout simplement pas être appelé mais il fonctionne si je le mets en dehors du bloc document.ready mais le clearInterval ne fonctionne pas!
Toute aide très appréciée.
Merci
Vous devriez essayer de mettre la fonction « intervalle » var et le « change_height » extérieur du « document.ready » –
Il ne fonctionne pas parce que 'change_height' est uniquement local au gestionnaire d'événements' ready', mais la chaîne passée à 'setInterval' est évaluée dans la portée globale. Passez directement la référence de la fonction, comme le suggère @Alexander. Une autre question: Pourquoi utilisez-vous 'setInterval' si vous l'effacez après la première exécution? Un simple 'setTimeout' serait suffisant. –