Pergunta

Estou tentando encontrar uma maneira simples de ter uma div, com apenas um texto nele rola automaticamente o texto verticalmente. Não quero usar uma estrutura (embora eu use o protótipo; portanto, se for mais fácil usando o protótipo, tudo bem, mas não é um scriptalicious).

Suponho que tenha que haver uma maneira de fazer isso com algumas linhas de código, mas não estou familiarizado o suficiente com o JavaScript para saber como fazer isso com mais eficácia.

Foi útil?

Solução

Isso pode não ser convencional, mas você pode tentar o <marquee> marcação

Funciona tanto no IE quanto no FF, e na última vez que verifiquei, o Safari também.

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

deve dar o que você quer,
E você pode estilizá -los como qualquer <div>...
E depois há a vantagem adicional de não ter JavaScript ...

Editar em resposta ao seu comentário

Fica melhor, tente isso em qualquer navegador

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

E isso no 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)" 

Como atributos da tag de letreiro ...

Outras dicas

function scrollDivUp(id){
    document.getElementById(id).scrollTop-=1
    timerUp=setTimeout("scrollDivUp('"+id+"')",10)
}

Experimente algo assim talvez.

Você também pode alterar o .ScrolLtop- = 1 para .Scrolltop+= 1 para rolar para o outro lado.

Você também precisaria de uma div rolável que possa ser feita restringindo o tamanho e definindo a propriedade de estilo de transbordamento, isto é. Style = "Largura: 200px; Altura: 300px; Overflow: Auto"

Tente mudar de div scrolltop. Existe um exemplo aqui.

Vejo que a resposta correta ainda não foi dada. Eu acho que você tem que olhar para CLONENODE (), por exemplo. E clonar o elemento que você deseja rolar. Quando o primeiro elemento estiver no último ponto de rolagem, coloque o elemento duplicado após o primeiro elemento. E quando esse elemento duplicado estiver quase no final, coloque o original após a duplicata e assim por diante!

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top