Flexslider - начать на конкретном слайде в зависимости от привязки?
Есть ли способ заставить flexslider запускаться на определенном слайде в зависимости от якорной ссылки?
например.
http://site.com/index.html - начать со слайда 1
http://site.com/index.html - начать со слайда 3
Я хотел бы установить его в качестве переменной в опции startAt, которая будет что-то вроде
если window.location.hash это число, начните с номера.
2 ответа
Решение
У flexslider есть опция startAt, она принимает целочисленное значение индекса вашего слайда.
Это может быть сделано с небольшим количеством Coffeescript (или JS, если вам это нравится больше), но пока работает только на настольных устройствах
# Add support for hashtags
$(window).load ->
# Get your hash tag
loc = $(location).attr('href')
idx = 1
if(loc.lastIndexOf('#') != -1)
idx = loc.substr(loc.lastIndexOf('#')+1).replace('slide', '')
# verify that idx is really a number
if(isNaN(idx-0))
idx = 1
# Click on your nav (idx starts at 0)
$('.flex-control-nav li:eq('+(idx-1)+') a').trigger('click')