Возможность добавления класса в & lt; a & gt; в редакторе Redactor

A Thread не является нитью . Нить - это исполнение вашего кода. Thread - это объект, который ваша программа использует для создания и управления жизненным циклом потока .

Предположим, вам нравится играть в теннис. Предположим, вы и ваш друг играете в действительно потрясающий набор. Как бы ваш друг отреагировал, если бы вы сказали: «Это было невероятно, давайте снова сыграем». Ваш друг может подумать, что вы с ума сошли. Не имеет смысла даже говорить о том, чтобы снова играть в один и тот же набор. Если вы снова играете, вы играете в другой набор.

Нить - это исполнение вашего кода. Не имеет смысла даже говорить о «повторном использовании» потока исполнения по той же причине, что бессмысленно говорить о повторном воспроизведении того же набора в теннисе. Даже если другое выполнение вашего кода выполняет все те же операторы в том же порядке, это все еще исполнение .

Анджей Дойл спросил: «Почему вы хотите для повторного использования Thread? " Почему? Если объект Thread представляет поток выполнения --- эфемерная вещь, о которой вы даже не можете говорить о повторном использовании, то зачем вам или ожидать объект Thread для повторного использования?

3
задан Mike Harrison 13 July 2018 в 08:33
поделиться

2 ответа

Я не слишком хорошо знаком с Redactor, но, возможно, вы могли бы сделать это с помощью обратного вызова или чистого JavaScript после загрузки элемента.

<style>
  .my-custom-class-1 {
    background-color: red;
  }
  .my-custom-class-2 {
    font-size: 16px;
  }
  .my-custom-class-3 {
    font-family: Helvetica Neue, Helvetica, Arial;
  }
</style>

Не знаете, что возвращается из ссылки, но если оно элемент html вы можете добавить классы с обратным вызовом.

  $R('#content', {
    callbacks: {
      link: {
        inserted: function(link) {

          // use the classList API to remove and add classes
          link.classList.remove("my-custom-class-1");
          link.classList.add("my-custom-class-1");

          // add or remove multiple classes
          link.classList.add("my-custom-class-1", "my-custom-class-2", "my-custom-class-3");
          link.classList.remove("my-custom-class-1", "my-custom-class-2", "my-custom-class-3");

        }
      }
    }
  });

Если ссылки имеют собственный идентификатор, вы можете сделать это в чистом JavaScript

  const link_1 = document.getElementById('linkId_1');
  const link_2 = document.getElementById('linkId_2');
  const link_3 = document.getElementById('linkId_3');

  // use the classList API to remove and add classes
  link_1.classList.remove("my-custom-class-1");
  link_1.classList.add("my-custom-class-1");

  // add or remove multiple classes
  link_1.classList.add("my-custom-class-1", "my-custom-class-2", "my-custom-class-3");
  link_1.classList.remove("my-custom-class-1", "my-custom-class-2", "my-custom-class-3");

Надеюсь, это поможет! :)

0
ответ дан Flavio 17 August 2018 в 13:21
поделиться

Вы можете использовать formattingAdd , чтобы создать собственный набор параметров форматирования для выпадающего списка форматирования. Это позволит вам добавить свои собственные классы CSS.

formattingAdd: {
    "red-p-add": {
        title: 'Red Paragraph',
        api: 'module.block.format',
        args: {
            'tag': 'p',
            'class': 'red-styled'
        }
    }
}

К сожалению, согласно Официальная документация :

formattingAdd может

Другими словами, поскольку <a> является встроенным элементом (а не блочным элементом), он может быть использован для блокировки тегов (p, pre, blockquote, div, heading и т. д.). если вы пытаетесь создать опцию, используя встроенную функциональность Redactor, тогда вам кажется, что вам не повезло.

3
ответ дан Grant Miller 17 August 2018 в 13:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: