Техническая поддержка сервиса Quadro.Boards

Объявление

Новости сервиса

О форуме

Quadro.Support – это форум технической поддержки различных проектов и сервисов Quadro.Systems LLC, на котором грамотные технические специалисты всегда смогут помочь вам в решении проблем, или же подсказать ответы на самые сложные вопросы. Так же на форуме собрана обширная база знаний по различным аспектам наших сервисов. Не забывайте пользоваться поиском ;)

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Техническая поддержка сервиса Quadro.Boards » Скрипты и дополнения » Выделение кода по клику


Выделение кода по клику

Сообщений 1 страница 2 из 2

1

Выделение кода по клику.

Автор: mkusher
Описание: Часто бывает неудобно на форумах выделять код, эти полосы прокрутки вечно мешают и плохо крутятся =(
Данный скрипт заменяет слово Код: вверху блока с кодом, на ссылку, по клику на который выделяется все содержимое блока с кодом
Скриншот:
http://forumd.ru/uploads/0007/e3/f7/60057-3-f.jpg
Установка: Копируйте код скрипта в поле html-низ.

Скрипт:

Код:
<script type="text/javascript">
function select_text(elem) {
	if(window.getSelection) {   
var s=window.getSelection();   
if(s.setBaseAndExtent){   
	s.setBaseAndExtent(elem,0,elem,elem.innerText.length-1);   
}
else {   
	var r=document.createRange();   
	r.selectNodeContents(elem);   
	s.removeAllRanges();   
	s.addRange(r);
}   
	}
	else if(document.getSelection){   
var s=document.getSelection();   
var r=document.createRange();   
r.selectNodeContents(elem);   
s.removeAllRanges();   
s.addRange(r);   
	}
	else if(document.selection){   
var r=document.body.createTextRange();   
r.moveToElementText(elem);   
r.select();
	}   
}
</script>
<script type="text/javascript">
var div = document.getElementById('pun-main').getElementsByTagName('div');
for(x in div){
	if(div[x].className=='code-box'){
div[x].getElementsByTagName('strong')[0].innerHTML = '<a href="#" onclick="select_text(this.parentNode.parentNode.childNodes[1].getElementsByTagName(\'pre\')[0]); return false;">Выделить код</a>';
	}
}
</script>

Для разработчиков - функция select_text( var DOM_object) принимает любой DOM объект и создает выделение в нем (если передать функции document.body то выделится вся страница)

Теги: Скрипты и дополнения

+3

2

Данный скрипт начал работать со сбоями во многих популярных браузерах после обновления до определенной версии(точно не скажу, но версии выпущены в 2017 году). В частности это касается Chrome, Оpera, FireFox. Клик на "Выделить код" более не выделяет код, а перематывает страницу. Не смотря на то что до сих пор в некоторых браузерах скрипт работоспособен, большая просьба, по возможности, скрипт пометить как устаревший, либо заменить.

Для тех кто ищет рабочую версию.
Актуальный скрипт можно найти по ссылке:
http://forum.mybb.ru/viewtopic.php?id=3 … 24#p913752

Отредактировано Antimag (28.01.2018 06:53:23)

0


Вы здесь » Техническая поддержка сервиса Quadro.Boards » Скрипты и дополнения » Выделение кода по клику


Рейтинг форумов | Создать форум бесплатно © 2007–2017 «QuadroSystems» LLC