|
|
13.01.2010, 22:21
|
|
Alexander
Зарегистрирован: 2010-01-13
Сообщений: 5
|
Необходимо сделать меню с прокруткой, т.е. выводить к примеру по 5 пунктов а далее нажимаем на стрелку и листаем меню дальше. Подскажите как реализовать данное меню в неткэт.
|
|
|
14.01.2010, 08:57
|
|
pe3udent
Артур Юсупов
Зарегистрирован: 2008-04-03
Сообщений: 220
|
тут вопрос не в том "как реализовать данное меню в неткэт", а в знании html и javascript
|
|
|
14.01.2010, 09:50
|
|
Alexander
Зарегистрирован: 2010-01-13
Сообщений: 5
|
К сожалению java script не знаю... поможете?
|
|
|
14.01.2010, 10:19
|
|
Хыиуду
Зарегистрирован: 2009-10-21
Сообщений: 156
|
В общем виде это будет выглядеть так:
<script>
MenuPieces=["html-код первых пяти строк меню", "html-код вторых пяти строк", "и т.д"];
CurrentPiece=0;
function ScrollPiece(shift) // Записывает в меню очередные 5 строк
{
CurrentPiece+=shift;
document.getElementById('scrolling_menu').innerHTML=MenuPieces[CurrentPiece];
//Находим элемент с id='scrolling_menu' и записываем внутрь него содержимое очередного элемента массива
}
</script>
А в том месте, где у вас выводится меню, будет примерно следующее:
<img src=strelka_left.gif onClick='ScrollPiece(-1);'> <!-- стрелка для листания влево -->
<span id='scrolling_menu'> <!-- внутри этого спана будет выводиться само меню
<script> document.write(MenuPieces[0]); </script> <!-- изначально выводится содержимое нулевого элемента -->
</span>
<img src=strelka_right.gif onClick='ScrollPiece(1);'> <!-- стрелка для листания вправо -->
|
|
|
14.01.2010, 14:17
|
|
Alexander
Зарегистрирован: 2010-01-13
Сообщений: 5
|
Хыиуду спасибо! Но это немного не то... нужно чтобы выводилось например 7 пунктов и стрелкой пролистывать его далее, т.е. нажав на стрелку появлялся следующий пункт, а самый первый убирался (как бы уходил назад)...
|
|
|
14.01.2010, 15:03
|
|
Хыиуду
Зарегистрирован: 2009-10-21
Сообщений: 156
|
<script>
MenuPieces=["html-код первой строки", "html-код второй строки", "и т.д"];
CurrentPiece=0;
function ScrollPiece(shift) // Записывает в меню очередные 5 строк
{
CurrentPiece+=shift;
res='';
for (i=CurrentPiece; i<CurrentPiece+5; i++)
res+=MenuPieces[ i ];
document.getElementById('scrolling_menu').innerHTML=res;
//Находим элемент с id='scrolling_menu' и записываем внутрь него содержимое очередного элемента массива
}
</script>
Все остальное то же самое
|
|
|
15.01.2010, 10:00
|
|
Alexander
Зарегистрирован: 2010-01-13
Сообщений: 5
|
Большое спасибо! Именно то что нужно, но только при пролистывание оно пролистывается до бесконечности, пункты в меню кончаются и далее выводится надпись "undefined". Еще почемуто меню не выводится пока не нажать на стрелку, только тогда появляется...
|
|
|
15.01.2010, 11:51
|
|
Хыиуду
Зарегистрирован: 2009-10-21
Сообщений: 156
|
Первое решается просто - вызвать ScrollPiece(0);
Со вторым чуть сложнее
function ScrollPiece(shift) // Записывает в меню очередные 5 строк
{
CurrentPiece+=shift;
if (CurrentPiece<0) CurrentPiece=0;
if (CurrentPiece>MenuPieces.length-5) CurrentPiece=MenuPieces.length-5;
Дальше все так жеж
|
|
|
15.01.2010, 12:00
|
|
Alexander
Зарегистрирован: 2010-01-13
Сообщений: 5
|
Спасибо!!!
|