автопрокрутка текста в блоках с возможностью просмотра вручную
Код:
<script> //############################################# //# Cкрипт из библиотеки https://shara.7fi.ru # //# Библиотека Javascript насчитывает # //# более 1500 скриптов и динамических стилей # //# Библиотека https://shara.7fi.ru # //# # //############################################# //# https://shara.7fi.ru # //############################################# document.writeln('<style type="text/css">'); document.writeln('.gallerycontroller{width: 250px}'); document.writeln('.gallerycontent{width: 250px;height: 200px;border: 1px solid black;background-color: #DFDFFF;padding: 3px;display: block;}'); document.writeln('</style>'); var tickspeed=3000 //ticker speed in miliseconds (2../000=2 seconds) var displaymode="auto" //displaymode ("auto" or "manual"). No need to modify as form at the bottom will control it, unless you wish to remove form. if (document.getElementById){ document.write('<style type="text/css">\n') document.write('.gallerycontent{display:none;}\n') document.write('</style>\n') } var selectedDiv=0 var totalDivs=0 function getElementbyClass(classname){ partscollect=new Array() var inc=0 var alltags=document.all? document.all.tags("DIV") : document.getElementsByTagName("*") for (i=0; i<alltags.length; i++){ if (alltags[i].className==classname) partscollect[inc++]=alltags[i] } } function contractall(){ var inc=0 while (partscollect[inc]){ partscollect[inc].style.display="none" inc++ } } function expandone(){ var selectedDivObj=partscollect[selectedDiv] contractall() selectedDivObj.style.display="block" temp.options[selectedDiv].selected=true selectedDiv=(selectedDiv<totalDivs-1)? selectedDiv+1 : 0 if (displaymode=="auto") autocontrolvar=setTimeout("expandone()",tickspeed) } function populatemenu(){ temp=document.gallerycontrol.menu for (m=temp.options.length-1;m>0;m--) temp.options[m]=null for (i=0;i<totalDivs;i++){ var thesubject=partscollect[i].getAttribute("subject") thesubject=(thesubject=="" || thesubject==null)? "HTML Content "+(i+1) : thesubject temp.options[i]=new Option(thesubject,"") } temp.options[0].selected=true } function manualcontrol(menuobj){ if (displaymode=="manual"){ selectedDiv=menuobj expandone() } } function preparemode(themode){ displaymode=themode if (typeof autocontrolvar!="undefined") clearTimeout(autocontrolvar) if (themode=="auto"){ document.gallerycontrol.menu.disabled=true autocontrolvar=setTimeout("expandone()",tickspeed) } else document.gallerycontrol.menu.disabled=false } function startgallery(){ document.getElementById("controldiv").style.display="block" getElementbyClass("gallerycontent") totalDivs=partscollect.length populatemenu() for (i=0; i<document.gallerycontrol.mode.length; i++){ if (document.gallerycontrol.mode[i].checked) displaymode=document.gallerycontrol.mode[i].value } if (displaymode=="auto") document.gallerycontrol.menu.disabled=true expandone() } if (window.addEventListener) window.addEventListener("load", startgallery, false) else if (window.attachEvent) window.attachEvent("onload", startgallery) else if (document.getElementById) window.onload=startgallery document.writeln('<div class="gallerycontent" subject="Первая строка">Это первый текст</div>'); document.writeln('<div class="gallerycontent" subject="Вторая строка">Это второй текст</div>'); document.writeln('<div class="gallerycontent" subject="Третья строка">Это третий текст</div>'); document.writeln('<div id="controldiv" style="display:none" class="gallerycontroller">'); document.writeln('<form name="gallerycontrol">'); document.writeln('<select class="gallerycontroller" size="3" name="menu" onChange="manualcontrol(this.options.selectedIndex)">'); document.writeln('<option>Blank form</option>'); document.writeln('</select><br>'); document.writeln('Auto: <input type="radio" checked name="mode" value="auto" onClick="preparemode(\'auto\')"> Manual: <input type="radio" name="mode" value="manual" onClick="preparemode(\'manual\')">'); document.writeln('</form>'); document.writeln('</div>'); </script>