Было время когда у всех стоял один и тот же код по выделению кода, и все было нормально. Но в один прекрасный момент он просто вышло из строя. И начали делать разные и они реально получались не очень. То мало слово выделить, где то стояло не на своем месте, то вообще не с первого раза все выделялось. И вот уже скрипт полностью доработан, где вы даже можете сами выставить все надписи что с ним идут и теперь его нужно просто устанавливать в другое место.
Доброе время суток, дорогие друзья!
Я недавно задался таким вопросом для своего сайта, что бы для вашего удобства при копирование кодов материала не выделять его в ручную а нажать на ссылку и она сама выделит и вам останется только скопировать.
Я много искал но всё было без полезно и у друзей спрашивал у них тоже нету. Но всё таки я его нашёл и установил себе.
Сей час я решил его выложить для всех так как думаю многим он может пригодится и может в данный момент кто то ищет так же как и я когда то искал но не может найти .
Теперь для того кто попал на эту страницу и если вы искали данный код, то я вас поздравляю так как одной проблемой у вас стало меньше.
И так давайте установим данный скрипт!
Для того что бы его установить вам нужно скопировать код ниже.
Код
<!-- <Выделить код> -->
<script type="text/javascript">
function selectCode(a){
var e=a.parentNode.parentNode.getElementsByTagName('code')[0];
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();}}
// Замена Code на Выделить всё...
codediv=document.getElementsByTagName('div');
for(i=0;i<codediv.length;i++){
if(codediv[i].className=="bbCodeBlock"){
s=codediv[i].innerHTML;
s=s.replace(/>Код</g,'>Код: <a href="#" onclick="selectCode(this);return false;">выделить всё<\/a><').replace('<!--uzc-->','<!--uzc--><code>').replace('<!--\/uzc-->','<\/code><!--\/uzc-->');
codediv[i].innerHTML=s;}}
</script>
<script type="text/javascript">
function selectCode(a){
var e=a.parentNode.parentNode.getElementsByTagName('code')[0];
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();}}
// Замена Code на Выделить всё...
codediv=document.getElementsByTagName('div');
for(i=0;i<codediv.length;i++){
if(codediv[i].className=="bbCodeBlock"){
s=codediv[i].innerHTML;
s=s.replace(/>Code</g,'>Код: <a href="#" onclick="selectCode(this);return false;">выделить всё<\/a><').replace('<!--uzc-->','<!--uzc--><code>').replace('<!--\/uzc-->','<\/code><!--\/uzc-->');
codediv[i].innerHTML=s;}}
</script>
<!-- </Выделить код> -->
После того как вы скопируете, вам нужно его вставить в нижнюю или в верхнюю часть сайта. Но я рекомендую вставлять в дизайн страницы нужного вам модуля перед тегом /body так как по правилам он должен стоять именно там.
Вот и всё скрипт у вас установлен и работает, а демонстрацию вы можете увидеть прямо на этой странице материала нажав на ссылку выделить всё и все отлично работает.