2010-11-24 28 views
4

En résumé, une zone de texte programmée avec un numéro de téléphone, avec le plugin Skype installé, produit les points de surbrillance.Empêcher la surbrillance de skype de corrompre des zones de texte

Ainsi,

(418) 555-1234 

devient

begin_of_the_skype_highlighting (418) 555-1234 end_of_the_skype_highlighting 

Et si cette chaîne est placé à l'intérieur de la zone de texte, la mise en surbrillance Skype symboliseront il à nouveau, Ad Infinitum.

Comment prévenir cela?

+0

désinstaller le plugin Skype n'est pas une option? J'ai toujours détesté qu'il convertisse des nombres réguliers en liens. –

+0

@moontear: J'aurais aimé que ça arrive, mais je ne peux pas empêcher les gens de l'installer. – MPelletier

Répondre

9

Vous devriez jeter un oeil à http://forum.skype.com/index.php?showtopic=96959&st=0

On dirait que c'est un bug signalé, mais pas résolu jusqu'à présent.

Suggestions doivent utiliser une balise meta (qui semble pas travail à travers tous les plugins Skype)

<meta name="SKYPE_TOOLBAR" content="SKYPE_TOOLBAR_PARSER_COMPATIBLE" /> 

Introduire un caractère non visible qui va briser l'algorithme de skype pour identifier les téléphones

+123 456<span style="display:none;">_</span> 789 

(ne pense pas que cela peut fonctionner avec des zones de texte si)

Et bien sûr désactiver le plugin, si le problème est avec votre propre accès à cette page.


Mise à jour

Vérifiez si l'un des deux exemples dans http://www.jsfiddle.net/gaby/Qy7uw/ travail. (je n'ai pas skype pour vérifier)

J'utilise le zéro largeur joiner &zwj; et le familier &nbsp;

+2

Stupide Skype. Ceci est tellement ennuyeux - il devrait suivre une certaine norme pour identifier les numéros de téléphone (comme 'tel: xxxx') et laisser le reste du contenu bien seul (serait +1 mais hors de votes) –

+0

Vous avez raison avec le textarea, peut Ne mettez pas une envergure là-dedans. Mais pour la balise meta, elle fait en réalité le contraire, elle permet de surligner (pour les futurs plugins Skype une fois qu'ils y sont arrivés), ne l'empêche pas, correct? – MPelletier

+0

@MPelletier, regardez http://forum.skype.com/index.php?showtopic=78380 et http://skype.otherlinks.co.uk/page.asp?id=toolbar_number_formatting Selon cela, seuls les chiffres qui sont enveloppés dans les tags de commentaire (* avec des règles spécifiques *) seront mis en évidence ''. –

0

bidouille laid, pas encore essayé, mais le texte qui va dans la zone de texte peut être générée avec un caractère non imprimable entre chaque caractère imprimable. Peut endommager l'encodage spécial si ...

1

En utilisant CSS uniquement, il peut être supprimé en remplaçant les styles utilisés par Skype. Essayez d'ajouter ces deux lignes à votre feuille de style:

span.skype_pnh_container {display:none !important;} 
span.skype_pnh_print_container {display:inline !important;} 

modifier Skype ont commencé à ajouter des numéros uniques aux classes, vous pouvez le résoudre en utilisant le nouveau sélecteur Css 3:

span.skype_pnh_container {display:none !important;} 
span.skype_pnh_print_container, span[class^="skype_pnh_print_container"] {display:inline !important;} 
+0

Retrait en utilisant des styles n'est plus une option car ils génèrent un sel aléatoire à la classe conteneur comme skype_pnh_container_12345 –

+0

@Timo: Je crois que la mise à jour d'Eduardo (CSS3) doit gérer cela (la dernière règle correspond aux styles de classes commençant par skype_pnh_print_container) est-ce que tu l'as essayé? – Groo

+0

oui, il me semble avoir manqué assez bizarrement, dommage qu'il n'y ait pas de solution CSS2. J'ai utilisé la balise meta SKYPE_TOOLBAR pour le résoudre. En fait, j'ai vu votre première solution mentionnée sur un message de Paul Irish sur une page Web, il semble que ce soit obsolète maintenant. –