Выделение кода одним кликом

Выделение кода одним кликом

02016-02-1635483Денис Абдуллин

Небольшое UX-дополнение для вашего сайта. Порой в материалах бывает много кода, на помощь приходит автовыделение по клику. Если коротко, это интересное решение позволит пользователю всего одним кликом выделить весь код опубликованный в статье, файле или же в посте на форуме.

Если копирование в буфер обмена еще кажется как-то затруднительным в плане кроссбраузерности, то простое выделение по клику отличный компромисс. Разумеется, этот код подойдет не только для выделения кода и цитат на сайте, вы можете использовать для других нужд, просто в скрипте поменяйте классы codeMessage и quoteMessage на свои.

Установка

Вставьте в нижнюю часть шаблона страницы материалов и комментариев к нему:

Код
<script type="text/javascript">
$('div.codeMessage, div.quoteMessage').click(function() {
  var e=this;  
  if(window.getSelection){  
  var s=window.getSelection();  
  if(s.setBaseAndExtent){  
  s.setBaseAndExtent(e,0,e,e.innerText.length-1);  
  }else{  
  var r=document.createRange();  
  r.selectNodeContents(e);  
  s.removeAllRanges();  
  s.addRange(r);}  
  }else if(document.getSelection){  
  var s=document.getSelection();  
  var r=document.createRange();  
  r.selectNodeContents(e);  
  s.removeAllRanges();  
  s.addRange(r);  
  }else if(document.selection){  
  var r=document.body.createTextRange();  
  r.moveToElementText(e);  
  r.select();}
});
</script>

Также посмотрите этот материал, здесь при копировании текста на сайте добавляется дополнительный.

Пока я дописывал этот материал и готовил для него графику, обнаружил, что не выкладывал вид кода для uCoz, причем не только свой, но и какие-либо другие. Были виды цитат, тоже немного, но были, а здесь я упустил. Ничего, скоро это будет исправлено.


Создать сайт в uKit Нужен классный сайт для бизнеса?
Воспользуйтесь сервисом uKit. Никакого кода!
Комментарии (3)
савушкин виталий михайлович 2016-02-17 в 04:11 / МатериалСпам
О скрипте этом я его уже давно в паблик закинул.
-5
Денис Абдуллин 2016-02-16 в 16:57 / Материал
О чем ты?
4
савушкин виталий михайлович 2016-02-16 в 16:30 / МатериалСпам
Вы меня конечно извените но я его давно уже в свет вытащил.
-5
Чтобы оставить комментарий или отзыв под этой публикацией, войдите или зарегистрируйтесь.