Слайдер полноценно работает в IE, делает непрерывный скроллинг в
Мозилле (останавливаясь при наведении мышки) и пока не работает в Опере
и Сафари (но этими браузерами пользуется
очень мало людей).
Текст
скрипта, который нужно вставить в тело странички между тегами
<body></body> и его (надеюсь доходчивое)
описание
<script language="
JavaScript"
type="text/
JavaScript">
function ss(a){scroller.scrollAmount=a}
//Это для мозиллы -
при
наведении на слайд он останавливается
</script>
<script language="
JavaScript">
var stpdelay=20;
//временной интервал
между двумя соседними шагами
var steps=11;
//количество шагов в
процессе перемещения от одного
слайда к другому
/*Функция
ниже организовывает пошаговое перемещние контента от одного
слайда к другому.
У
нас контент - это табличка с одинаковыми колонками по 400 пикселей
каждая.
Агрумент
endpos - это конечная позиция слайдера (куда его нужно
перевести).
*/
function slide(endpos){
var nowpos=scroller.scrollLeft;
//запоминаем
исходную позицию слайдера
var stpvalue=Math.floor((endpos-nowpos)/steps);
//вычисляем
величину
шага
var endstp=(endpos-nowpos)%steps;
//ширина ячейки
(слайда) не
обязательно кратна величине шага, поэтому нужен еще шаг для остатка
var i=0;
//счетчик шагов
t1=window.setInterval(gostp,stpdelay);
//с интервалом
stpdelay
запускаем функцию 1-го шага
/*Следующая функция
шага gostp() - передвигает слайдер на величину шага stpvalue
влево,
увеличиваем
на 1 счетчик шагов и проверяем не достиг ли он необходимого
числа
шагов steps для перемещения на нужный слайд. Если достиг, то
удаляем
интервальный
запуск шагателя gostp(), обнуляем счетчик шагов для
последующего
использования
и делаем последний шаг(в случае, если ширина слайда не
кратна шагу)
*/
function gostp(){scroller.scrollLeft=scroller.scrollLeft+stpvalue;i++;
if(i>=steps){clearInerval(t1);i=0;scroller.scrollLeft=scroller.scrollLeft+endstp}
}
}
</script>
Тег
marquee (внутри него наша табличка со слайдами, состоящая из 1-го рядка
и 3-х колонок - 3 слайда):
<marquee id="scroller"
behavior="slide" scrollamount="20" direction="left"
width="400" onmouseover="ss(0)" onmouseout="ss(20)"
height="500"
style="border: 1px solid black; background-color:
white;"><br
style="color: rgb(129, 11, 223);">
Заголовок
таблицы со слайдами:
<table
style="text-align: left; width: 1200px; height: 400px;"
border="0" cellpadding="0" cellspacing="0">
Внутри
кажой ячейки таблицы нельзя сразу вставлять код слайдов, т.к. ширина
ячеек таблицы будет менятья пропорционально содержимому, а не будет
оставаться заданой нами
величиной, чтобы этого избежать внутри каждой ячейки находится еще
таблица (border="0" cellpadding="0" cellspacing="0") с шириной 400px и
всего одной ячейкой - это для фиксации ширины слайда.
После
таблицы со слайдами обязательно вставьте скрипт:
<script language="
JavaScript"
type="text/
JavaScript">
scroller.stop();scroller.scrollLeft=400 </script>
-
этот скрипт останавливает скроллер (в IE) после загрузки страницы (т.к.
по
умолчанию он движется).