Предотвратить выделение скайпа от повреждения текстовых полей - PullRequest
4 голосов
/ 24 ноября 2010

Короче говоря, текстовая область, запрограммированная запрограммированным номером телефона, с установленным плагином Skype, производит метки выделения.

Таким образом,

(418) 555-1234

становится

begin_of_the_skype_highlighting (418) 555-1234 end_of_the_skype_highlighting

И если эта строка помещена внутри текстовой области, выделение Skype будет инкапсулировать ее снова , Ad Infinitum .

Как вы можете предотвратить это?

Ответы [ 3 ]

9 голосов
/ 24 ноября 2010

Вы должны взглянуть на http://forum.skype.com/index.php?showtopic=96959&st=0

Похоже, что это сообщенная ошибка, но до сих пор не решенная.

Рекомендуется использовать метатег (, который, похоже, не работает во всех плагинах Skype )

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

Введите невидимый символ, который нарушит алгоритм Skype для идентификации телефонов

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

( не думаю, что это может работать с текстовыми зонами, хотя )

И, конечно, отключите плагин, если проблема связана с вашим собственным доступом к этой странице.


Update

Проверьте, работает ли какой-либо из двух примеров в http://www.jsfiddle.net/gaby/Qy7uw/. ( У меня нет скайпа для проверки )

Я использую соединение нулевой ширины &zwj; и знакомое &nbsp;

1 голос
/ 30 марта 2011

Используя только CSS, его можно удалить, переопределив стили, используемые Skype. Попробуйте добавить эти две строки в таблицу стилей:

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

edit Skype начал добавлять уникальные номера в классы, вы можете решить это с помощью нового селектора Css 3:

span.skype_pnh_container {display:none !important;}
span.skype_pnh_print_container, span[class^="skype_pnh_print_container"] {display:inline !important;} 
0 голосов
/ 24 ноября 2010

Гадкий хак, еще не пробовал, но текст, который идет в текстовой области, может быть с непечатным символом между каждым печатным символом.Может повредить специальную кодировку, хотя ...

...