2013-12-18 3 views
0

Это общий вопрос, на который я тоже могу найти ответ. С помощью twitters bootstrap carousel можно использовать функцию MyCarousel.carousel(number), чтобы перейти к определенному слайду, но вместо использования числа это может быть текст. Или он должен быть числом, чтобы перейти непосредственно на слайд.Bootstrap Carousel MyCarousel.carousel (номер)

Таким образом, вместо того, чтобы называть слайды с 1 по 5, а затем использовать MyCarousel.carousel(3), чтобы перейти к слайду три, можете ли это показывать слайды a, а затем использовать MyCarousel.carousel(c), чтобы перейти к слайду c.

я попытался сделать это, но я получаю следующее сообщение об ошибке с помощью текста:

Uncaught TypeError: Property 'c' of object [object Object] is not a function 

Так это возможно, или я должен просто придерживаться, используя цифры? Причина использования текста заключается в том, чтобы сделать его проще для пользователя, поскольку я позволяю им вводить тот слайд, который они хотели бы использовать в URL-адресе, и использование текста облегчило бы их.

ответ

1

Как вы можете видеть в бутстрапом документы:

Это должно быть число ..

.carousel (число) - Циклы карусельного к конкретному кадру (0 основе, аналогично к массиву).

0

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

Это позволит пользователю вводить свой выбор в какое-то поле ввода, а затем вы можете выбрать его через сопоставление массива.

//Create a distinct key/value array mapping out your slides 
var slides = new Array(); 
slides["first slide"]=0; 
slides["second slide"]=1; 
slides["third slide"]=2; 

//Whatever your user inputs and you collect 
userInput = "second slide"; 

//Make sure the input "key" exists first 
if(slides.hasOwnProperty(userInput)) { 
    $('#myCarousel').carousel(slides[userInput]); 
} else { 
    alert("Sorry, that slide does not exist"); 
}