2012-04-09 2 views
0

http://jsfiddle.net/udit_sharma/GFknc/Le texte d'astuce n'est pas supprimé

J'ai créé ce violon. qui ont une boîte de saisie et il a hint-Text. Quand je suis concentré dans cette zone de saisie, c'est l'indice-le texte est effacé correctement. et quand je me concentre - hors de cet indice de boîte de saisie - le texte est montré à nouveau s'il n'y a rien entré par l'utilisateur.

Mais il y a un problème .let dit que vous êtes concentré dans la zone de saisie et que vous avez cliqué sur un autre onglet dans le navigateur maintenant si vous revenez à ce violon remarquez que hint-Text est affiché alors qu'il était vide page. et aussi son effacement pas en cliquant dans et hors de la boîte d'entrée. ?

Donc le problème que j'ai trouvé est quand je clique sur un autre onglet onblur n'est pas appelé de sorte que la variable "valueChanged" n'est pas mise à false. Donc, tout en se concentrant à nouveau, il n'efface pas la valeur par défaut de l'indice-Texte.

Donc, je ne comprends pas pourquoi onBlur n'est pas appelé. Si quelqu'un a des indices à ce sujet, dites-le ou y a-t-il un autre moyen de faire cette fonctionnalité?

+0

je ne pourrais pas reproduire votre problème ... – Luan

+0

bien je pourrais au moins sur le chrome –

+0

Sur mon navigateur il fonctionne absolument bien, quel navigateur utilisez-vous –

Répondre

0

Vous pouvez essayer ceci:

<input type="text" name="placeHolder" placeholder="hy i'm a place holder" /> 

il est un attribut html5, vous pouvez ajouter le <!DOCTYPE html> sur le dessus de votre fichier html.

+0

Cela fonctionne mais seulement sur les navigateurs web (Internet Explorer n'en fait pas partie). – Luan

0

On dirait que Chrome lance deux fois le flou de la zone de texte. J'ai été capable de résoudre cela en faisant de l'événement de flou une fonction nommée et un flou de liaison pendant la mise au point addOptionInputEle.off('blur').on('blur', onAddOptionBlur);. Ensuite, dans onAddOptionBlur j'ai fait une boucle pour délier toutes les instances de gestionnaires de flou.

while(addOptionInputEle.data('events').blur) 
{ 
    addOptionInputEle.off('blur'); 
} 

note: non testé dans autre chose que le chrome.

Questions connexes