Запретить преобразование URL-адресов в ссылки в TinyMCE / Internet Explorer
Я использую TinyMCE для предоставления пользователям возможности простого форматирования текста (полужирный, курсив, списки) в поле формы textarea. Everthing работает правильно, за исключением Internet Explorer (8, но я читал, что это происходит в более ранних версиях), когда пользователи вводят URL (например www.google.com) он автоматически преобразуется в HTML-ссылку в Редакторе TinyMCE по мере ввода. Этого не происходит в Firefox (3). Как я могу предотвратить IE от этого?
Я инициализировал TinyMCE следующим образом:
tinyMCE.init({
mode : "textareas",
theme : "simple",
convert_urls : false
});
но я не думаю, что convert_urls предназначен для влияния на поведение, которое я описываю:http://wiki.moxiecode.com/index.php/TinyMCE:Configuration/convert_urls
пробовал:
function myCustomURLConverter(url, node, on_save) {
return url;
}
tinyMCE.init({
mode : "textareas",
theme : "simple",
urlconverter_callback : "myCustomURLConverter"
});
но точно так же я думаю, что это просто способ повлиять на то, как/преобразуются ли URL-адреса при загрузке/сохранении, а не препятствовать их преобразованию в ссылки как пользователей тип: http://wiki.moxiecode.com/index.php/TinyMCE:Configuration/urlconverter_callback
проблема, которую я пытаюсь исправить, описана, по крайней мере, в нескольких местах: http://tinymce.moxiecode.com/punbb/viewtopic.php?id=2182&p=1 (третий пост, Томми) http://drupal.org/node/149511
кто-нибудь видел это раньше или есть какие-либо предложения о том, как исправить это? Кодовая база TinyMCE довольно большая и ее трудно отследить, поэтому я был надеюсь, кто-то может помочь мне немного изолировать проблему.
4 ответов
не похоже, что это способ отключить это в IE. Кажется, это "особенность", и это происходит на FCKEditor тоже. Несколько альтернатив, удалите элемент из допустимых элементов. http://wiki.moxiecode.com/index.php/TinyMCE:Configuration/valid_elements
или выполните синтаксический анализ тега serverside, чтобы удалить его.
Я думаю, что это может быть "особенность" http://msdn.microsoft.com/en-us/library/aa769893 (VS.85).aspx
а вот может быть намек на то, чтобы заставить его работать, но он выглядел как ActiveX и VB, поэтому я довольно быстро потерялся в своем эксперименте http://www.mindfrost82.com/showpost.php?p=1114381&postcount=2
Я думаю, что решил это так:
remove_script_host: "false",
relative_urls: "false",
document_base_url : "http//www.mywebsite.nlhttp://www.mywebsite.nl",
вот рабочий обходной путь, нуждающийся в плагине вставки. В конфигурации TinyMCE init добавьте:
paste_preprocess : function(pl, o) {
// Strip <a> HTML tags from clipboard content (Happens on Internet Explorer)
o.content = o.content.replace( /(\s[a-z]+=")<a\s[^>]+>([^<]+)<\/a>/gi, '' );
}
Я решил эту проблему с помощью этих конфигураций:
remove_script_host : false,
auto_cleanup_word : false,
relative_urls : false,
convert_urls : false,
verify_html : false,
convert_newlines_to_brs : false,
urlconvertor_callback: "convLinkVC",
document_base_url : "",
forced_root_block : '',