Редактирование: Обсуждение шаблона:Цитата

Перейти к: навигация, поиск

Эта страница обсуждений и предложений шаблона Цитата. Пожалуйста, подписывайте свои сообщения, используя четыре тильды (~~~~).

Внимание! Вы не авторизовались на сайте. Ваш IP-адрес будет публично видимым, если вы будете вносить любые правки. Если вы войдёте или создадите учётную запись, правки вместо этого будут связаны с вашим именем пользователя, а также у вас появятся другие преимущества.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.
Текущая версия Ваш текст
Строка 2: Строка 2:
  
 
Я нашла способ удобно размещать оригинал цитаты в этом шаблоне. [http://wiki.rpground.ru/%D0%A2%D0%B5%D1%81%D1%82 Демонстрация]. Для этого требуется добавить в [[MediaWiki:Common.css]] [http://wiki.rpground.ru/index.php?title=MediaWiki%3ACommon.css&action=historysubmit&diff=3325&oldid=3058 такие строчки] и внести небольшую правку в разметку шаблона, это беру на себя. [[Участник:EvilCat|EvilCat]] 10:10, ноября 29, 2011 (UTC)
 
Я нашла способ удобно размещать оригинал цитаты в этом шаблоне. [http://wiki.rpground.ru/%D0%A2%D0%B5%D1%81%D1%82 Демонстрация]. Для этого требуется добавить в [[MediaWiki:Common.css]] [http://wiki.rpground.ru/index.php?title=MediaWiki%3ACommon.css&action=historysubmit&diff=3325&oldid=3058 такие строчки] и внести небольшую правку в разметку шаблона, это беру на себя. [[Участник:EvilCat|EvilCat]] 10:10, ноября 29, 2011 (UTC)
 
Спасибо. Ждём, когда обновится кэш Викии. [[Участник:EvilCat|EvilCat]] 18:32, ноября 29, 2011 (UTC)
 
 
== Давайте показывать оригинал не по hover'у, а по щелчку ==
 
 
Показ оригинала по наведению мыши имеет существенные недостатки:
 
 
* Наведение недоступно на устройствах с сенсорным вводом. А это не только мобильные устройства (которые мы и так не поддерживаем), но и планшеты и некоторые ноутбуки.
 
* Наведение меняет размер страницы, сдвигаяя всё вокруг при перемещении мыши. Это сбивает с толку, т.к. перемещение мыши не воспринимается как действие, а тут при перемещении элементы сдвигаются.
 
 
Сделать показ по щелчку можно несложным JS-скриптом. Если надо, могу его написать. [[Участник:Demetrius|Demetrius]] ([[Обсуждение участника:Demetrius|обсуждение]]) 12:55, 2 мая 2024 (MSK)
 
 
: Спасибо! Мне просто добавить это в [[MediaWiki:Common.js]]? Какие-то ещё изменения куда-нибудь нужны? [[Участник:EvilCat|EvilCat]] ([[Обсуждение участника:EvilCat|обсуждение]]) 14:41, 2 мая 2024 (MSK)
 
 
:: В [[MediaWiki:Common.js]] надо обернуть его в <code>addOnloadHook(function () { /* тут код */ });</code> (ну или дать ему название — я добавил пример внизу). Ну из из [[MediaWiki:Common.css]] тогда надо убрать блок <code>.original:hover .hidden_original { ... }</code>, иначе старое поведение останется.
 
=== Примеры скриптов ===
 
 
Вот пример скрипта для скрытия по hover'у (оба нужно выполнять после загрузки страницы, т.е. нужно запихнуть их либо в <code>$(function () { ... })</code>, либо в <code>document.addEventListener('DOMContentLoaded', function () { ... })</code>. Кроме того, оба кода конфликтуют с нашим теперешим CSS'ом, так что CSS по <code>:hover</code> надо убрать тогда.
 
 
<pre>
 
// на jQuery, ES5
 
$('.show_original').click(function () {
 
  var $button = $(this);
 
  var $wrapper = $button.closest('.original');
 
  var $text = $wrapper.find('.hidden_original');
 
  if ($text.is(':hidden')) {
 
    $text.show();
 
    $button.text('Скрыть оригинал');
 
  } else {
 
    $text.hide();
 
    $button.text('Показать оригинал');
 
  }
 
});
 
 
// без jQuery, современный JS (ES6)
 
Array.from(document.querySelectorAll('.show_original')).forEach(buttonElement => {
 
  buttonElement.addEventListener('click', function () {
 
    const buttonElement = this
 
    const wrapperElement = buttonElement.closest('.original')
 
    const textElement = wrapperElement.querySelector('.hidden_original');
 
    if (textElement.style.display === 'none') {
 
      textElement.style.display = '';
 
      buttonElement.innerText = 'Скрыть оригинал';
 
    } else {
 
      textElement.style.display = 'none';
 
      buttonElement.innerText = 'Показать оригинал';
 
    }
 
  })
 
})
 
</pre>
 
 
[[Участник:Demetrius|Demetrius]] ([[Обсуждение участника:Demetrius|обсуждение]]) 13:24, 2 мая 2024 (MSK)
 
 
 
==== Пример скрипта, обёрнутого для MediaWiki:Common.js  ====
 
 
Можно добавить это в конец [[MediaWiki:Common.js]]:
 
 
<pre>
 
function addQuotationSourceHandling() {
 
  $('.show_original').click(function () {
 
    var $button = $(this);
 
    var $wrapper = $button.closest('.original');
 
    var $text = $wrapper.find('.hidden_original');
 
    if ($text.is(':hidden')) {
 
      $text.show();
 
      $button.text('Скрыть оригинал');
 
    } else {
 
      $text.hide();
 
      $button.text('Показать оригинал');
 
    }
 
  });
 
}
 
 
addOnloadHook(addQuotationSourceHandling);
 
</pre>
 
 
Также надо убрать эти строчки из [[MediaWiki:Common.css]] (иначе старое поведение по наведению мыши останется):
 
<pre>
 
.original:hover .hidden_original
 
{
 
display:block;
 
}
 
</pre>
 
 
[[Участник:Demetrius|Demetrius]] ([[Обсуждение участника:Demetrius|обсуждение]]) 15:01, 2 мая 2024 (MSK)
 

Обратите внимание, что все добавления и изменения текста статьи рассматриваются как выпущенные на условиях лицензии Creative Commons Attribution Share Alike (см. Энциклопедия:Авторские права). Если вы не хотите, чтобы ваши тексты свободно распространялись и редактировались любым желающим, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого.
НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ МАТЕРИАЛЫ, ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ!

Чтобы изменить эту страницу, пожалуйста, ответьте на приведённый ниже вопрос (подробнее):

Отменить | Справка по редактированию (в новом окне)