J'essaie de faire fonctionner une fonctionnalité qui existe sur mon site mais qui fonctionne mal sur Safari pour iPhone.Safari pour iPhone ne peut pas évaluer correctement jQuery?
Eh bien, j'ai un élément « li »:
..
<li><input id='showOrHide' type='button' value='show or hide'/></li>
<li><input type='text' value='ok'/></li>
..
Lorsque je clique sur le bouton « afficher ou cacher », l'entrée de texte doit apparaître ou disparaître.
Ensuite, j'ai une fonction jQuery qui lie le clic:
$("#showOrHide").click(function(){
if($(this).parent().next().is(':visible'))
$(this).parent().next().hide('slow');
else
$(this).parent().next().show('slow');
});
Le problème est que, si l'élément apparaît, Safari cache montre ensuite.
Je pense donc que Safari vérifie si l'élément est visible ou non. S'il est visible, il le cache, puis va dans la sélection "else". Là, il vérifie si l'élément est visible ou non. Il trouvera le non visible, puis le fera apparaître.
Existe-t-il une solution pour cela sans utiliser un framework javascript extrernal (mais jQuery)?
Merci, Cordialement
Je ne vois pas tout à fait ce que votre code essaie de faire. Ainsi, lorsque vous cliquez sur le bouton 'showOrHide', il est supposé faire basculer la visibilité du second élément li? –