Переопределить автоформатирование электронной почты IE в текстовом редакторе - PullRequest
1 голос
/ 31 июля 2009

На нашем сайте используется FreeTextBox , веб-редактор для форматирования текста. В IE, но не в Firefox, если пользователь вводит что-то вроде:

кто-то @ бла

IE автоматически создает гиперссылку mailto. Я проверил это с другими текстовыми редакторами, и история со всеми одинакова.

Можно ли как-то переопределить это поведение браузера из моего приложения?

1 Ответ

1 голос
/ 17 июня 2011

Это связано с редактором MSHTML, который (я предполагаю, что все) браузеры Windows используют для создания экземпляров текстовых редакторов. Существует параметр IDM_AUTOURLDETECT_MODE , который позволяет вам решить, будет ли происходить автоподключение, и по умолчанию установлено значение true (другие браузеры, по-видимому, устанавливают его на false при создании экземпляра, следовательно, в Firefox нет автоподсоединения.)

К сожалению, до недавнего времени у Microsoft не было соответствия между идентификатором команды и строкой идентификатора команды, поэтому функция не была доступна через Javascript до IE9.

Я только что попробовал это в IE9 и могу подтвердить, что для этой версии и, вероятно, для всех будущих, вы можете переопределить функцию, вызвав

document.execCommand("AutoUrlDetect", false, false);

Обратите внимание, что это только IE9 +, так что вы все еще застряли на предыдущих версиях, и что вам нужно подождать, пока DOM загрузится, прежде чем вызывать его и иметь некоторую обработку ошибок вокруг него, и т. Д., И т. Д.

Хорошее резюме исходной проблемы здесь и обсуждение исправления в списке незначительных изменений здесь .

...