2015-08-07 1 views
0

У меня есть липкий СЧА с этим кодом (не мое)Bootstrap Navbar не открывается - мобильный вид

// Create a clone of the menu, right next to original. 
$('nav').addClass('original').clone().insertAfter('.navbar-default').addClass('cloned').css('position','fixed').css('top','0').css('margin-top','0').css('z-index','500').removeClass('original').hide(); 

scrollIntervalID = setInterval(stickIt, 10); 


function stickIt() { 

    var orgElementPos = $('.original').offset(); 
    orgElementTop = orgElementPos.top;    

    if ($(window).scrollTop() >= (orgElementTop)) { 
    // scrolled past the original position; now only show the cloned, sticky element. 

    // Cloned element should always have same left position and width as original element.  
    orgElement = $('.original'); 
    coordsOrgElement = orgElement.offset(); 
    leftOrgElement = coordsOrgElement.left; 
    widthOrgElement = orgElement.css('width'); 
    $('.cloned').css('left',leftOrgElement+'px').css('top',0).css('width',widthOrgElement).show(); 
    $('.original').css('visibility','hidden'); 
    } else { 
    // not scrolled past the menu; only show the original menu. 
    $('.cloned').hide(); 
    $('.original').css('visibility','visible'); 
    } 
} 

Он отлично работает на рабочем столе зрения, но на мобильном телефоне, когда я пытаюсь открыть меню меню не открывается и страница увеличивается. Вот пример: http://www.bootply.com/UYrOA0xDqa (Открыть опцию мобильного телефона)

Мой вопрос: как я могу это исправить?

+0

Он открыт? Просто не с фиксированным позиционированием. – Roope

+0

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

+0

Согласовано. Кажется, хорошо работает. С какими браузерами или условиями вы получаете эти результаты? –

ответ

0

Проблема связана с функцией stickIt в вашем коде.

Я предполагаю, что то, что вы делаете, скрывает прокручиваемую версию меню и показывает липкую версию меню, когда верхняя часть меню прокручивается мимо верхнего края страницы. Вы делаете это, установив visibility: hidden.

К сожалению, поскольку видимая открытая часть меню находится в пределах прокручиваемой версии меню, это также устанавливается в visibility: hidden, когда активируется липкий элемент, вызывающий пустое пространство.

Возможно, вы захотите вызвать что-либо, чтобы показать открытую часть меню в липкой тоже (она открыта в прокручиваемой версии меню), когда активирована липкая клавиша.

+0

Я думаю, это проблема, но я не понимаю, как это должно быть исправлено ... – Tal