Автоматическая вертикальная прокрутка содержимого div - PullRequest
0 голосов
/ 22 декабря 2009

Я пытаюсь найти простой способ сделать элемент div, содержащий только текст, автоматически прокручивать текст по вертикали. Я не хочу использовать фреймворк (хотя я использую Prototype, так что, если проще использовать Prototype, то это нормально, но без скриптов).

Я предполагаю, что должен быть способ сделать это с помощью нескольких строк кода, но я не достаточно знаком с Javascript, чтобы знать, как наиболее эффективно это сделать.

Ответы [ 4 ]

6 голосов
/ 23 декабря 2009

Это может быть необычно, но вы можете попробовать тег <marquee>

он работает как в IE, так и в FF, и в последний раз, когда я проверял, тоже сафари.

<marquee behavior="scroll" direction="up" height="250" 
   scrollamount="2" scrolldelay="10"">
  Your content goes here
</marquee>

должен дать вам то, что вы хотите,
и вы можете оформить их как любой <div> ...
и тогда есть дополнительное преимущество отсутствия javascript ...

Изменить в ответ на ваш комментарий

Становится лучше, попробуйте это в любом браузере

onmouseover="this.stop()" onmouseout="this.start()"

А это в IE

style="filter:progid:DXImageTransform.Microsoft.Alpha( Opacity=0,
FinishOpacity=100, 
Style=1, StartX=0,  FinishX=0, StartY=0, FinishY=10) 
progid:DXImageTransform.Microsoft.Alpha( Opacity=100, FinishOpacity=0, 
Style=1, StartX=0, FinishX=0, StartY=90, FinishY=100)" 

в качестве атрибутов тега выделения ...

0 голосов
/ 29 августа 2010

Я вижу, что правильный ответ еще не дан. Я думаю, что вы должны взглянуть на cloneNode (), например. И клонируйте элемент, который вы хотите прокрутить. Когда первый элемент находится в последней точке прокрутки, поместите дублированный элемент после первого элемента. И когда этот дублированный элемент почти в конце, поместите оригинал после дубликата и так далее!

0 голосов
/ 22 декабря 2009

Попробуйте изменить * div 1004 * scrollTop . Вот пример здесь .

0 голосов
/ 22 декабря 2009
function scrollDivUp(id){
    document.getElementById(id).scrollTop-=1
    timerUp=setTimeout("scrollDivUp('"+id+"')",10)
}

попробуйте что-нибудь подобное.

Вы также можете изменить .scrollTop- = 1 на .scrollTop + = 1, чтобы прокрутить другой путь.

Вам также потребуется прокручиваемый элемент div, который можно сделать, ограничив размер и установив свойство стиля переполнения, т.е. style = "width: 200px; высота: 300px; переполнение: авто"

...