X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Скользящий блок на javascript (маалюсенькая помощь)
zakaznik
zakaznik
Topic Starter сообщение 12.2.2013, 10:06; Ответить: zakaznik
Сообщение #1


Ребята, помогите, пожалуйста...

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

имеется скрипт, который делает меню скользящим:

Развернуть/Свернуть
<script type="text/javascript">
$(function() {
var TopOld = $("#fixed").offset().top;
var MaxBottom = $("#dashboard").offset().top - parseInt($("#fixed").height()); //&&
var Delta = 19; //начало движения не доходя до верха;
var Busy = false; //Занят обработкой;



$(window).scroll(function() {

if ( Busy ) { return false;}

Busy = true; // Занят;
var ThisTop = $("#fixed").offset().top;
var Scroll = $(window).scrollTop();

if (Scroll > (TopOld-Delta) && ThisTop < MaxBottom ){
$("#fixed").addClass('Fixed');
} else $("#fixed").removeClass('Fixed');

if (Scroll > MaxBottom) $("#fixed").removeClass('Fixed');

Busy = false; //Освободился

});
});
</script>


fixed - это id дива, в котором находится меню
dashboard - это id дива, который ограничивает скольжение fixed, т.е. fixed будет скользить только до дива dashboard.

В моем случае при достижении dashboard див fixed и меню исчезает... (т.е. открепляется и опять вверху страницы становится)....
как сделать, чтобы при достижении dashboard див fixed просто фиксировался, оставался на месте? Т.е., чтобы меню не исчезало, а просто останавливалось?

P.S. Для работы так же подключаем стили на страничке:
Развернуть/Свернуть
<style>




#fixed {

position: absolute;
z-index:1000;

}

#fixed.Fixed {
position: fixed;
z-index:1000;
top:19px;
transition-property:top;
-webkit-transition-property:top;
-moz-transition-property:top;
-o-transition-property:top;
-ms-transition-property:top;

transition-duration: 0.4s;
-webkit-transition-duration: 0.4s;
-moz-transition-duration: 0.4s;
-o-transition-duration: 0.4s;
-ms-transition-duration: 0.4s; /* IE9+ */
}</style>



Сообщение отредактировал zakaznik - 12.2.2013, 10:13
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Ortero
Ortero
сообщение 12.2.2013, 10:40; Ответить: Ortero
Сообщение #2


Как вариант можете попробовать скрипт из второго сообщения темы http://www.maultalk.com/topic132958.html


Сообщение отредактировал Ortero - 12.2.2013, 10:50


--------------------
Бегет - просто хороший хостинг, который еще и ssl-сертификат бесплатно дает.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
zakaznik
zakaznik
Topic Starter сообщение 12.2.2013, 10:54; Ответить: zakaznik
Сообщение #3


Ortero, нет он не подходит, это и есть измененный скрипт моего варианта... в вашем примере есть большой минус....у него нет ограничителя... страница листается, листается, листается вниз
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
tszyan
tszyan
сообщение 12.2.2013, 13:01; Ответить: tszyan
Сообщение #4


Скрипт страшен и глючен, но если хотите исправить именно его, то примерно так:
<script type="text/javascript">
    $(function() {
        var TopOld = $("#fixed").offset().top;
        var MaxBottom = $("#dashboard").offset().top - parseInt($("#fixed").height());
        var Delta = 19;
        var Busy = false;

        $(window).scroll(function() {

            if (Busy)
                return false;

            Busy = true;
            var ThisTop = $("#fixed").offset().top;
            var Scroll = $(window).scrollTop();

            if (Scroll > (TopOld - Delta) && ThisTop < MaxBottom)
                $("#fixed").addClass('Fixed');
            else
                $("#fixed").removeClass('Fixed').css({top: ThisTop});

            if (Scroll < MaxBottom)
                $("#fixed").css({top: 0});
                    
            if (Scroll > MaxBottom)
                $("#fixed").removeClass('Fixed');
                    
            Busy = false;

        });
    });
</script>


Сообщение отредактировал tszyan - 12.2.2013, 13:03
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
zakaznik
zakaznik
Topic Starter сообщение 12.2.2013, 14:17; Ответить: zakaznik
Сообщение #5


tszyan, отписал в ЛС, у вас некий недочет имеется)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
tszyan
tszyan
сообщение 12.2.2013, 14:31; Ответить: tszyan
Сообщение #6


(zakaznik @ 12.2.2013, 14:17) *
tszyan, отписал в ЛС, у вас некий недочет имеется)

Точнее у Вас в посте не приведена верстка. А гадать что у Вас в ней — дело неблагодарное. А получить что-то универсальное из этого скрипта — трудно.

Сообщение отредактировал tszyan - 12.2.2013, 14:33


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
zakaznik
zakaznik
Topic Starter сообщение 13.2.2013, 7:18; Ответить: zakaznik
Сообщение #7


Проблема решена
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
falken
falken
сообщение 13.2.2013, 12:55; Ответить: falken
Сообщение #8


Закрыто по просьбе ТС.

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.


--------------------
🗹 Быстрый и надежный хостинг от 135 рублей
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Требуется помощь по сайту на "ВордПресс"
Закрылся доступ в панель администратора
15 Tia2 2341 17.4.2024, 0:54
автор: diviner99
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлыСостояние после ампутации - нужна помощь
благотворительный топик
49 vitvirtual 5872 1.4.2024, 5:23
автор: vitvirtual
Открытая тема (нет новых ответов) требуется помощь с themasoftware (Темапостером)
0 Taylor 623 16.3.2024, 18:41
автор: Taylor
Открытая тема (нет новых ответов) Услуги по созданию и доработке скриптов PHP, MySQL, JavaScript, jQuery
Разработка сайтов и сервисов под-ключ
0 alexey 1240 24.11.2023, 14:46
автор: alexey
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлыВеб-разработка (HTML5, CSS3, JavaScript, jQuery, Ajax, PHP)
56 qpPeW 44900 19.7.2023, 10:03
автор: qpPeW


 



RSS Текстовая версия Сейчас: 19.4.2024, 4:52
Дизайн