2015-10-07 3 views
1

Когда я использовал более старую версию путевых точек jQuery, я объявлял все мои путевые точки на своем сайте в одном файле сценариев, и неважно, существовал ли элемент на на определенной странице, эта путевая точка будет либо запускаться, либо игнорироваться. Однако, после обновления до текущей версии, когда у меня есть пара путевых точки объявлены как это:jQuery Путевые точки, не соответствующие путевым точкам на разных страницах

var sticky = new Waypoint.Sticky({ 
    element: $('.stickynav')[0], 
    offset: 100, 
}); 

var successStories = new Waypoint({ 
    element: $('#slider-wrap'), 
    handler: function(direction) { 
    if(direction === 'down'){ 
     $('ul.navbar-nav li.how').removeClass('active'); 
     $('ul.navbar-nav li #slider-wrap').addClass('active'); 
    } else if (direction === 'up'){ 
     $('ul.navbar-nav li #slider-wrap').removeClass('active'); 
     $('ul.navbar-nav li.how').addClass('active'); 
    } 
    }, 
    offset: 90 
}); 

Если один из этих элементов путевых точек не существует на текущей странице я на это выдает ошибку, что чем элемент не передается и уничтожает все процессы после этого кода. Вам нужно объявить путевые точки на каждой конкретной странице сейчас?

ответ

1

Я понял решение. Я просто завернул эту функцию в

if($('.selector').length) { 
    ... 
} 

Проверить, существует ли элемент в первую очередь.

 Смежные вопросы

  • Нет связанных вопросов^_^