2010-02-02 4 views
0

J'ai un problème. Je voudrais mettre à jour un compteur (vu par l'utilisateur tel qu'il est affiché dans un certain div) quand un bouton est pressé. Donc, cela se produit lorsque le bouton est pressé:sIFR et jQuery: remplacer dynamiquement le texte

$("#photo-counter span").empty().append((start_index+1)+"-"+(end_index+1)+"/"+files.length); 
sIFR.replace(netto, { selector: "#photo-counter span"}); 

Comme sur la première fois exécute automatiquement et tout fonctionne très bien, mais quand je clique sur le bouton, le div n'est pas remplacé par sIFR.

Quelqu'un peut-il aider?

+0

Peut-être que vous pouvez fournir également le code environnant. –

Répondre

0

Vous pouvez réellement faire:

sIFR.replacements["#photo-counter span"][0].replaceText((start_index+1)+"-"+(end_index+1)+"/"+files.length); 

Pas besoin de mettre à jour le code HTML, sIFR prend de tout ce soin pour vous.

0

Plus de code pourrait être utile pour résoudre ce problème.

Quoi qu'il en soit, voici une photo:

Changer votre clic pour un clic en direct:

$('#yourElement').live('click', function(){ 
    $("#photo-counter span").empty().append((start_index+1)+"-"+(end_index+1)+"/"+files.length); 
    sIFR.replace(netto,{ 
     selector: "#photo-counter span" 
    }); 
}); 

Hope this helps!

+0

J'ai essayé le code inférieur avec l'événement en direct, mais cela n'a pas fonctionné; (A propos, savez-vous s'il existe un événement en direct comme "mouseup"? – arold

+0

bien le code semble être au-dessus – arold

0

ici est le code complet:

$("#arrow-left").mouseup(function() { 
if(!$("#frame > *").is(":animated") && status != "fullscreen"){ 
$(this).css({"opacity":"1.0"}); 

arrowClick("left"); 
}}; 

function arrowClick(direction) { 
(...) /* i dont think the problem is located somewhere here */ 
refreshCounter(start, end); 
(...) 
} 

function refreshCounter(start_index, end_index) { 
if(files.length > 0) { 
start_i = start_index; 
end_i = end_index; 
if(start_index !=null && end_index != null) { 
$("#photo-counter span").empty().append((start_index+1)+"-"+(end_index+1)+"/"+files.length); 
sIFR.replace(netto, { selector: "#photo-counter span"}); 
} 
}