Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Реверсное прилипание headbar-a (нестандартное), Скрипт на реверсное прилипание 
V
    Опции темы
JackPaller
Дата 4.11.2014, 20:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 4.11.2014

Репутация: нет
Всего: нет



Вообщем такая тема: создаю дизайн сайта на подобии как в приложении Google Play и столкнулся с одной проблемой!! В приложении очень хитро сделали header который разделен на 2 части (главный блок с кновкой меню и поиском, блок меню) и при скроле вниз верхний главный блок скрывается а нижний фиксируется!! Но стоит чуть чуть пролиснуть вверх (не доходя до начала страницы) снова вылазил главный блок.. 

Я перепробовал множество вариантов и был близок к целе но пришел момент когда я вынужден просить помощи у профи  Помогите чем сможете.. В конце концов кому-то готовый вариант может пригодиться в будущем, а не только мне

Вот мои наработки! У меня получилось осуществить скрытие и залипание но не так как хотелось!! На мобильных устройствах и вовсе ерунда

Код

<!DOCTYPE html><html lang="ru"><head><meta charset="windows-1251"/><title>EXinfo - News</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1" />
<link rel="stylesheet" type="text/css" href="styles/media-queries.css"/>
<link rel="shortcut icon" href="img/favicon.png">
<script src="js/jquery-2.1.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
    $(document).ready(function(){
        var HeaderTop = $('#headbar').offset().top;
        var HeaderTop = $('#center-headbar').offset().top;
        
        $(window).scroll(function(){
                if( $(window).scrollTop() > HeaderTop ) {
                        $('#headbar').css({position: 'static', top: '0px'});
                        $('#center-headbar').css({top: '0px'});
                } else {
                        $('#headbar').css({position: 'fixed', top: '0px'});
                        $('#center-headbar').css({top: '50px'});
                }
        });
    });
</script>
</head><body>
 
<div id="headbar">
 
<div id="wrap-headbar">
<div id="left-headbar">
 
</div>
<div id="center-headbar">
<ul>
<li><a href="">ГЛАВНАЯ</a></li>
<li><a id="active" href="">НОВОСТИ</a></li>
<li><a href="">ИСТОРИЯ</a></li>
<li><a href="">СТАТЬИ</a></li>
</div>
<div id="right-headbar">
 
</div>
</div>
 
</div>
 
</body></html>


Код

#headbar{
background:#4c82ff;
width:100%;
min-height:50px;
}
#wrap-headbar{
}
#left-headbar{
width:100px;
height:50px;
border:1px solid #000;
}
#center-headbar{
background:#4c82ff;
text-align:center;
width:100%;
padding:0px;
position:fixed;
}
#center-headbar ul{
margin:0px;
padding:0px;
list-style-type:none;
}
#center-headbar li{
margin:0px;
padding:0px;
list-style-type:none;
display:inline-block;
}
#center-headbar a{
font-family:Helvetica-Medium;
color:#b2c9ff;
padding:10px;
display:block;
}
#center-headbar a:hover{
color:#fff;
text-decoration:none;
}
#center-headbar #active{
color:#fff;
border-bottom:2px solid #fff;
}
#right-headbar{
width:100px;
height:50px;
border:1px solid #000;
position:absolute;
top:0;
right:0;
float:right;
}


скриншоты можно найти в этой теме
PM MAIL   Вверх
Aliance
Дата 5.11.2014, 12:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



http://jsfiddle.net/Aliance/rkaxdho3/

На будущее, лучше сразу мастерить примерчик на jsfiddle.net, чтобы это другие не делали за вас.

Теперь еще раз (с примерами IDшников блоков), что и куда вы хотите чтобы прилипало?

PS: У вас нет закрывающего </ul>
PM MAIL WWW ICQ Skype   Вверх
JackPaller
Дата 5.11.2014, 15:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 4.11.2014

Репутация: нет
Всего: нет



Цитата(Aliance @ 5.11.2014,  12:34)
http://jsfiddle.net/Aliance/rkaxdho3/

На будущее, лучше сразу мастерить примерчик на jsfiddle.net, чтобы это другие не делали за вас.

Теперь еще раз (с примерами IDшников блоков), что и куда вы хотите чтобы прилипало?

PS: У вас нет закрывающего </ul>

нужно что-бы при прокрутке вниз center-headbar фиксировался а headbar отваливался вверх! но при прокрутке вверх он появлялся!! Знаете такой эффект как Reversed sticky (Реверсное прилипание)? Это как раз мне и нужно. Обратите внимание что headbar должен появляться не при прокрутке страницы до начала, а в любом месте прокрутив немного вверх (как в приложении Google Play)

P.S. Я знал про незакрытый тег! Он не особо важен для этого примера.. Торопился потому что дело срочное


Это сообщение отредактировал(а) JackPaller - 5.11.2014, 15:35
PM MAIL   Вверх
Aliance
Дата 5.11.2014, 16:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



В примере вашем (по моей ссылке если перейти, добавить в CSS код body { height: 2000px;  } и нажать Run) все работает при прокрутке вниз, то есть вы хотите чтобы весь хедер появлялся не только в начале документа, а при любом пролистывании вверх? Ну так введите переменную, запоминайте в конце функции старой значение прокрутки, а в начале сравнивайте с текущим - так вы определите направление прокрутки, дальше уже делайте, что вам нужно.
PM MAIL WWW ICQ Skype   Вверх
JackPaller
Дата 5.11.2014, 23:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 4.11.2014

Репутация: нет
Всего: нет



Цитата(Aliance @ 5.11.2014,  16:54)
В примере вашем (по моей ссылке если перейти, добавить в CSS код body { height: 2000px;  } и нажать Run) все работает при прокрутке вниз, то есть вы хотите чтобы весь хедер появлялся не только в начале документа, а при любом пролистывании вверх? Ну так введите переменную, запоминайте в конце функции старой значение прокрутки, а в начале сравнивайте с текущим - так вы определите направление прокрутки, дальше уже делайте, что вам нужно.

можно пожалуйста рабочий пример! Я уже запарился с этим. Сил нет все пререьирал и не работает
PM MAIL   Вверх
sQu1rr
Дата 6.11.2014, 14:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 597
Регистрация: 11.11.2008
Где: london

Репутация: 1
Всего: 13



Как то так, особо не старался - лень
http://jsfiddle.net/sQu1rr/oejm5f51/
PM MAIL Skype GTalk   Вверх
JackPaller
Дата 6.11.2014, 14:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 4.11.2014

Репутация: нет
Всего: нет



Цитата(sQu1rr @ 6.11.2014,  14:22)
Как то так, особо не старался - лень
http://jsfiddle.net/sQu1rr/oejm5f51/

Гениально! Не совсем то но я думаю разберусь. Главное что работает) Я хотел чтобы при прикрутке вверх вылазил "синий" div а красный должен быть закреплен всегда. Если не лень можно поправить?

Это сообщение отредактировал(а) JackPaller - 6.11.2014, 14:51
PM MAIL   Вверх
sQu1rr
Дата 6.11.2014, 14:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 597
Регистрация: 11.11.2008
Где: london

Репутация: 1
Всего: 13



Цитата(JackPaller @  6.11.2014,  14:50 Найти цитируемый пост)
Если не лень можно поправить?

честно? лень smile

К тому же
Цитата(JackPaller @  6.11.2014,  14:50 Найти цитируемый пост)
я думаю разберусь


А вот если будет запара, тут всегда помогут ;)

PM MAIL Skype GTalk   Вверх
JackPaller
Дата 6.11.2014, 15:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 4.11.2014

Репутация: нет
Всего: нет



Цитата(sQu1rr @ 6.11.2014,  14:58)
Цитата(JackPaller @  6.11.2014,  14:50 Найти цитируемый пост)
Если не лень можно поправить?

честно? лень smile

К тому же
Цитата(JackPaller @  6.11.2014,  14:50 Найти цитируемый пост)
я думаю разберусь


А вот если будет запара, тут всегда помогут ;)

ну может быть найдется немного времени? Дело минутное. А я на это часы убью если не дни.. Я и так на поиски решения убил уже неделю. Мне очень нужен этот скрипт и я уже в отчаянии
PM MAIL   Вверх
JackPaller
Дата 6.11.2014, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 4.11.2014

Репутация: нет
Всего: нет



Есть 2 дива: синий и красный! Не важно что на них должно быть.. 

Сейчас ситуация такая: красный див прилипает только при прокрутке вверх (в любой части страницы) а синий остается в начале страницы 

Нужно: чтобы красный див был всегда фиксирован но при прокрутке вверх появлялся синий див и сдвигал красный 

Вот уже набросали черновик: jsfiddle.net/sQu1rr/oejm5f51/

Нужно немного доработать но я уже незнаю как. Кучу вариков перебрал.. Помогите ребят кому не лень!

Это сообщение отредактировал(а) JackPaller - 6.11.2014, 17:03
PM MAIL   Вверх
sQu1rr
Дата 6.11.2014, 17:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 597
Регистрация: 11.11.2008
Где: london

Репутация: 1
Всего: 13



Цитата(JackPaller @  6.11.2014,  17:01 Найти цитируемый пост)
Нужно немного доработать но я уже незнаю как. Кучу вариков перебрал.. Помогите ребят кому не лень!

Как можно перебрать кучу вариантов за 2 часа. Что бы сделали за вас - идите в центр помощи, и не нужно плодить клонов.
PM MAIL Skype GTalk   Вверх
JackPaller
Дата 6.11.2014, 21:11 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 4.11.2014

Репутация: нет
Всего: нет



Цитата(sQu1rr @ 6.11.2014,  17:51)
Цитата(JackPaller @  6.11.2014,  17:01 Найти цитируемый пост)
Нужно немного доработать но я уже незнаю как. Кучу вариков перебрал.. Помогите ребят кому не лень!

Как можно перебрать кучу вариантов за 2 часа. Что бы сделали за вас - идите в центр помощи, и не нужно плодить клонов.

А что еще делать если я не разбираюсь в скриптах, а дизайн уже должен быть готов..На то чтобы выучить js уйдет уйма времени
PM MAIL   Вверх
Aliance
Дата 7.11.2014, 08:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



Цитата(JackPaller @  6.11.2014,  22:11 Найти цитируемый пост)
А что еще делать если я не разбираюсь в скриптах, а дизайн уже должен быть готов.

Заплатить за работу профессионалу, например.

Здесь - форум, где советуют и помогают разобраться, чтобы автор сделал САМ. Иногда (повторюсь, лишь иногда) могут бесплатно сделать за вас, если это легче, чем объяснить. Но в целом здравая практика в данном случае - либо долго, но дешево (разбираешься сам), либо быстро, но дорого (платишь профессионалу). Давно бы уже закинули ТЗ на фриланс, не думаю, что один скрипт стоил бы больше 50 долларов.
PM MAIL WWW ICQ Skype   Вверх
JackPaller
Дата 7.11.2014, 11:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 4.11.2014

Репутация: нет
Всего: нет



Цитата(Aliance @ 7.11.2014,  08:58)
Цитата(JackPaller @  6.11.2014,  22:11 Найти цитируемый пост)
А что еще делать если я не разбираюсь в скриптах, а дизайн уже должен быть готов.

Заплатить за работу профессионалу, например.

Здесь - форум, где советуют и помогают разобраться, чтобы автор сделал САМ. Иногда (повторюсь, лишь иногда) могут бесплатно сделать за вас, если это легче, чем объяснить. Но в целом здравая практика в данном случае - либо долго, но дешево (разбираешься сам), либо быстро, но дорого (платишь профессионалу). Давно бы уже закинули ТЗ на фриланс, не думаю, что один скрипт стоил бы больше 50 долларов.

ХОРОШО я учту..
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0532 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.