wysihtml5 Отключить правила синтаксического анализатора при вставке, но включить для предварительно заполненного текста и ввода?

Есть ли способ отключить правила парсера для вставки или просто вставить обычный текст с помощью редактора wysihtml5? Так что вставляется только обычный текст без тегов или любого другого форматирования? Комментирование моего правила парсера не работает для меня, потому что я все еще хочу, чтобы предварительно заполненный текст (с тегами привязки и разрыва строки) анализировался моими правилами парсера. Хотя это и не обязательно, я также хотел бы, чтобы редактор обнаруживал URL-адреса и создавал якоря по мере ввода, но не обязательно при вставке.

Причина, по которой я хочу это сделать, заключается в том, что при вставке с использованием правил парсера (особенно из MSWord, но также и из веб-контента) вставляется много ненужных символов (таких как новые строки %0A и теги span). Вставка простого текста предотвратит вставку случайного скрытого содержимого.

Просто для справки, мои правила парсера чрезвычайно просты:

var wysihtml5ParserRules = {
  tags: {
    br:     {},
    a:      {
      set_attributes: {
        target: "_blank",
        rel:    "nofollow"
      },
      check_attributes: {
        href:   "url" // important to avoid XSS
      }
    }
  }
};

person RayOnAir    schedule 15.08.2013    source источник


Ответы (1)


Если вам все время нужен простой текст, перейдите в раздел «Сценарии» вашего проекта, и вы найдете файл wysihtml5-toolbar.min.js.

Найти текст

wysihtml5.dom.getPastedHtml=function(a){var b;return a.clipboardData&&(wysihtml5.lang.array(a.clipboardData.types).contains("text/html")?b=a.clipboardData.getData(" текст/html"):wysihtml5.lang...

Замените b=a.clipboardData.getData("text/html") на "text/plain".

person Ivo Ljatkoski    schedule 20.06.2017