Прокручивающиеся новости

 
0
 
JavaScript
ava
Mebios | 25.11.2004, 18:02
Подскажите пожалуйста, как сделать чтобы новости в определённой рамке прокручивались "как титры ", чтобы их ещё можно было остановить и снова запустить
Kommentare (10)
ava
Sardar | 26.11.2004, 10:50 #
Если ты говоришь о внешнем виде, то делаем слой с заданной шириной/высотой, в стилях overflow: hidden, position: relative;
Затем помещаем туда все наши новости(в слое, в табличке). Прокручиваем изменяя слой.scrollTop

Сами новости можно грузить как RSS файл, поищи здесь примеры как работать с XML из JS. ПРавда это не имеет смысла если страница при каждом клике перезагружается.
ava
Cheba | 27.11.2004, 12:50 #
Цитата (Sardar @ 26.11.2004, 10:50)
ПРавда это не имеет смысла если страница при каждом клике перезагружается.
Почему не имеет?
ava
Sardar | 27.11.2004, 15:47 #
Дык тогда проще сгенерить содержимое нвовостей прямо в скрипт и не подгружать RSS файл.
ava
Desdichado | 10.12.2004, 22:23 #
Вот так делаются титры


<html>
<head>
<title> Титры</title>
</head>
<body bgcolor=white onLoad="init()">
<script language=javascript>
<!--
//global variables
var layerRef="null",layerStyleRef="null",styleSwitch="null",topStopPoint="null",layerRef="null",styleSwitch="null",currtop=-100;
var topStopPoint=-700,d=document.referrer;
var backupTopStopPoint=topStopPoint;
var currTop=600;
var pxSwitch="null";
var moving=1;
var k=0;
function init()
{
if (navigator.appName == "Netscape")
{
layerStyleRef="layer.";
layerRef="document.layers";
styleSwitch="";
pxSwitch="";
}
else
{
layerStyleRef="layer.style.";
layerRef="document.all";
styleSwitch=".style";
pxSwitch="px";
}
moveLayerUp('credits',k);
}
function pause(layerName)
{
moving*=-1;
if(moving<0)
topStopPoint=currTop+pxSwitch;
else
{
topStopPoint=backupTopStopPoint;
moveLayerUp(layerName,k);
}
}
function restart(layerName)
{
k++;
currTop=600;
topStopPoint=backupTopStopPoint;
if(moving<0)
{
moving*=-1;
moveLayerUp(layerName,k);
}
}

function moveLayerUp(layerName,n)
{
if (eval(layerRef+'["'+layerName+'"]'+styleSwitch+'.top != topStopPoint'))
{
currTop-=4;
eval(layerRef+'["'+layerName+'"]'+styleSwitch+'.top = currTop');
setTimeout('moveLayerUp("'+layerName+'",'+n+')',50);
}
}
//-->
</script>

<style type="text/css">
#text {z-index: 2; position: absolute; left: 15px; top: 15;}
#credits {z-index: 1; position: absolute; top: 0; left: 30px; width: 300px;}
</style>

<div id="text">Text</div>

<div id="credits">
<font face=arial>
All trade marks and brand names are acknowledged as belonging to their respective owners. <br><br>
<b>Authors</b>
</font>
</div>

</body>
</html>
ava
Alx | 10.12.2004, 23:47 #
боже мой, да зачем же так извращаться???


<html>
<body>
<basefont face="Verdana" size="2">
<div id="123" style="width:150;color:white;background:#6699ff;padding:6;border:2px solid blue #6699cc;">
<marquee height="150" behavior="scroll" direction="up" scrollamount="3" onmouseover="this.stop()" onmouseout="this.start()">
<center><b>Внимание!!!!</b></center>
это какая-нибудь новость (или новости), которая импортируется сервером или JavaScript-скриптом.
</marquee>
</div>
</body>
</html>

später ergänzt:
мышку подводим - останавливается, убираем - едем! smile
ava
dm9 | 13.12.2004, 21:07 #
Ну, положим, в Опере с мышкой не особенно...
ava
Vidocq | 16.12.2004, 16:36 #
Ууух-ты, а в эксплорере рулит! smile
Мне нравится !!! :hehe
ava
Alx | 16.12.2004, 16:53 #
мы плохого не советум ;)
ava
Aliance | 10.03.2005, 23:51 #
Alx
В Опере не берет, в IE тормозит при работе других сценариев :(
У меня на сайте похожее =)
ava
Zaman | 11.03.2005, 19:51 #
http://www.woweb.ru/catalog/71/

а здесь ты найдешь интересное решение для инетересующей тебя задачи,
Registrieren Sie sich oder melden Sie sich an, um schreiben zu können.
Unternehmen des Tages
Вы также можете добавить свою фирму в каталог IT-фирм, и публиковать статьи, новости, вакансии и другую информацию от имени фирмы.
Подробнее
Mitwirkende
  Sardar   dm9   Alx   Cheba   Desdichado   Zaman ava  Aliance   Mebios   Vidocq
advanced
Absenden