Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Скролл элементов li списка / 2 сообщений из 2, страница 1 из 1
20.09.2014, 17:09
    #38752470
Aina2008
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Скролл элементов li списка
Здравствуйте программеры.

Вопрос следующий, мне нужно сделать скрол элементов списка <ul> (то есть <li>).

Я здесь всю страницу не буду приводить, а только те части которые отвечают за это.

Имеется css стиль:

Код: css
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
.topmenu ul.items{
    background-color: #FFFFFF;
    left: 0;
    margin: 0;
    position: absolute;
    width: 960px;
    z-index: 400;
    height: 325px;
    overflow: hidden;
    border-radius: 0 0 10px 10px;
    display: none;
    top:41px;
    border-bottom: 1px solid #4F4F4F;
    border-right: 1px solid #4F4F4F;
    border-left: 1px solid #4F4F4F;
    box-shadow: 1px 1px 3px #4F4F4F;
    -webkit-box-shadow:1px 1px 3px #4F4F4F;
    -moz-box-shadow:1px 1px 3px #4F4F4F;
    filter: progid:DXImageTransform.Microsoft.dropshadow(offX=1, offY=1, color=#4F4F4F);
}
.topmenu ul.items > li{
    margin: 0 1%0 1%;
    padding: 0;
    width: 14.5%;
    float: left;
}
.topmenu ul.items > li > a{
    display: block;
    color: #D65712;
    font: bold 12px/26px Tahoma, sans-serif;
    text-transform: uppercase;
    text-decoration: none;
    margin: 2px 14px 2px 19px;
    white-space: nowrap;
    border-bottom: 1px solid #CBCBCB;
}
.topmenu ul.items > li > div{
    position: relative;
    height: 291px;
}
.topmenu ul.items > li > div > div{height: 16px;width: 100%;position: absolute;left:0;cursor: pointer;}
.topmenu ul.items > li > div > .scroll-down{background: url(/images/scroll-down.png) no-repeat center center #fff;bottom:0;}
.topmenu ul.items > li > div > .scroll-up{background: url(/images/scroll-up.png) no-repeat center center #fff;top: 0;display: none;}
.topmenu ul.item{
    padding-left: 13%;
    margin: 0;
    height: 275px;
    overflow: hidden;
}
.topmenu ul.item > li{
    background: none;
    padding: 0;
    display: block;
    line-height: 16px;
}
.topmenu ul.item > li a{
    color: #000;
    font: normal 11px Tahoma, sans-serif;
    text-transform: none;
    text-decoration: none;
}
.topmenu ul.item > li a:hover{color: #B9271E;text-decoration: underline;}



Далее имеется HTML - разметка

Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
         <ul class="topmenu">
         
            <li>
              <a href="">Каталог</a>
             <!-- формирование меню каталога --> 
              <div>
              
                <ul class="items" style="display: none;">
                   <li>
                     <a href="">Samsung</a>
                     <div class="scroll">
                        <div class="scroll-up"></div>
                        <div class="scroll-down"></div>
                        <ul class="item">
                          <li><a href="">Galaxy S5 SM G900</a></li>
                          <li><a href="">Galaxy Note 3 N9005</a></li>
                          <li><a href="">Galaxy Tab 3 10.1 P5210</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                          <li><a href="">Galaxy Tab 3 7.0 P3200</a></li>
                        </ul>
                     </div>
                   </li>
                   
                   <li>
                     <a href="">Apple</a>
                     <div>
                       <ul class="item">
                         <li><a href="">Ipad Air</a></li>
                         <li><a href="">Iphone 5/5S</a></li>
                         <li><a href="">Ipad Mini</a></li>
                         <li><a href="">Ipad Mini</a></li>
                       </ul>
                     </div>
                   </li>
                                                        
                </ul>
                
              </div>
              <!-- end формирование меню каталога --> 
              
            </li>
            
            <li>
              <a href="">Акции</a>            
            </li>
            <li>
              <a href="">Доставка и оплата</a>            
            </li>
            <li>
              <a href="">Гарантии</a>            
            </li>
            <li>
              <a href="">Статьи и обзоры</a>            
            </li>
            <li>
              <a href="">Контакты</a>            
            </li>                                                            
         </ul>



имеется скрипт

Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
$(document).ready(function(){
    var in_items = false;
    $('ul.items').parent().siblings('a').mouseenter(function(){
        var items = $(this).parent().find('ul.items').fadeIn(300);
        in_items = false;
    });
    $('ul.items').parent().siblings('a').mouseleave(function(){
        var items = $(this).parent().find('ul.items');
        setTimeout(function(){
            if(!in_items) items.fadeOut(300);
        },200);
    });
    $('ul.items').mouseenter(function(){
        in_items = true;
    });
    $('ul.items').mouseleave(function(){
        $(this).fadeOut(300);
    });
    $('ul.items .scroll-down').click(function(){
        scrollDown($(this).parent());
    });
    $('ul.items .scroll-up').click(function(){
        scrollUp($(this).parent());
    });
    
    $('ul.items .scroll').each(function(){
        if (this.addEventListener) {
            if ('onwheel' in document) {
                this.addEventListener ("wheel", onWheel, false);
            } else if ('onmousewheel' in document) {
                this.addEventListener ("mousewheel", onWheel, false);
            } else {
                this.addEventListener ("MozMousePixelScroll", onWheel, false);
            }
        } else {
            this.attachEvent ("onmousewheel", onWheel);
        }
        function onWheel(e) {
            e = e || window.event;
            var delta = e.deltaY || e.detail || e.wheelDelta;
            if(delta > 0){
                scrollDown($(this));
            } else{
                scrollUp($(this));
            }
            e.preventDefault ? e.preventDefault() : (e.returnValue = false);
        }
    });

});

function scrollDown(scroll){

    if(scroll.find('.item li:last').is(':hidden')){
        scroll.find('.item li:visible:first').fadeOut(0);
        scroll.find('.item li:visible:last').next().fadeIn(0);
    }
    scrollChange(scroll);
}

function scrollUp(scroll){
    
   if(scroll.find('.item li:first').is(':hidden')){
        scroll.find('.item li:visible:last').fadeOut(0);
        scroll.find('.item li:visible:first').prev().fadeIn(0);
    }
    scrollChange(scroll);
}

function scrollChange(scroll){
    
    if(scroll.find('.item li:last').is(':visible')){
        scroll.find('.scroll-down').fadeOut(300);
    } else{
        scroll.find('.scroll-down:hidden').fadeIn(300);
    }
    if(scroll.find('.item li:first').is(':visible')){
        scroll.find('.scroll-up').fadeOut(300);
    } else{
        scroll.find('.scroll-up:hidden').fadeIn(300);
    }
}



Не как не получается сделать скрол..., где ошибка.
...
Рейтинг: 0 / 0
20.09.2014, 18:11
    #38752504
Aina2008
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Скролл элементов li списка
Там как мне кажется проблема в методах

scrollDown(scroll)

scrollUp(scroll)
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Скролл элементов li списка / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]