Mon bac à sable est ici: http://9.latest.truxmap.appspot.com/Pourquoi ma fonction Javascript fonctionne-t-elle QUELQUES fois?
d'abord cliquer sur un marqueur sur la carte (s'il n'y en a pas quand la page se charge, cochez la case « food trucks ouverture bientôt » dans le widget de navigation). Ensuite, allez dans l'onglet "Avis". Dans GWT, chaque fois que j'ouvre un marqueur, j'appelle la fonction javascript resizeReviewTab() qui corrige le problème de style qui survient étant donné que le contenu des onglets status et review est dynamique. Si le Javascript a fonctionné, alors vous verrez STARS plutôt que des boutons radio flottant juste au-dessus de la zone de texte dans l'onglet 'Critiques'. Sinon, vous verrez des boutons radio simples.
Je n'arrive pas à comprendre ce qui se passe quand le marqueur NE S'ouvre pas correctement. Comment pourrait-il fonctionner une fois, puis pas à nouveau, puis travailler à nouveau après quelques marqueurs différents? Heres la thats fonction appelée:
function resizeReviewTab(){
$('#content').text("");
$('.statusWindowB').css('height', $('.statusWindowA').css('height'));
$('.name-sliding').focus(function() {
$('.name-label-sliding').animate({ marginLeft: "133px" }, "fast");
if($(this).val() == "name")
$(this).val() == "";
}).blur(function() {
if($(this).val() == "") {
$(this).val() == "name";
$('.name-label-sliding').animate({ marginLeft: "12px" }, "fast");
}
});
$('.content-sliding').focus(function() {
$('.content-label-sliding').fadeOut("slow");
});
starify();
}
starify() est le javascript pour les jquery.stars plugin jQuery avec quelques modifications, visibles ici: http://9.latest.truxmap.appspot.com/lib/jquery.rating.js
Je dois appeler cette fonction parce que si je simplement charge Au début du document html, aucune des fenêtres d'information créées en cliquant sur la carte ne verra ses boutons radio modifiés en étoiles.
Ceci est assez gênant, j'attends vos réponses avec impatience. Merci!
Une question avec une démo de travail pour jouer avec et le code source? Je dois être en train de rêver :) Je vais certainement me pencher là-dessus quand je serai de retour à la maison aujourd'hui (le débogage de GWT + JS peut être un PITA: /). PS: comment appelez-vous exactement la fonction 'resizeReviewTab()'? –
Impossible de reproduire dans Firefox, mais sur une note de côté le X pour fermer les popups ne ferme pas le popup. –
@Igor, j'appelle resizeReviewTab() après avoir ouvert une fenêtre d'information. resizeReviewTab() est défini dans GWT comme une fonction JSNI qui a une ligne: resizeReviewTab(); @TB, la fenêtre contextuelle de l'infowindow ou les fenêtres contextuelles de la barre de menu? –