Изменить числовое значение на текстовое? Галерея jQuery - PullRequest
0 голосов
/ 19 августа 2011

Мне очень нравится это Галерея jQuery

Однако вместо цифр для навигации я бы хотел использовать слова (например, Футбол / Регби / Легкая атлетика).

Как мне этого добиться?

Большое спасибо за любые указатели.

Ответы [ 2 ]

0 голосов
/ 19 августа 2011

Вы должны изменить источник.С другой стороны, изменение исходного кода выглядит довольно просто.Вы хотите переименовать параметр numericId во что-то вроде indexId, чтобы отразить его новое назначение.Затем вы добавите параметр indexLabels, который принимает значение массива.

Измените это:

if(options.numeric){
    html += '<ol id="'+ options.numericId +'"></ol>';

на

if(options.numeric || options.indexLabels){
    html += '<ol id="'+ options.indexId +'"></ol>';

И добавьте еще одну ветвь к этому:

if(options.numeric){
    for(var i=0;i<s;i++){
    //...
}

с чем-то вроде этого:

else if(options.indexLabels) {
    // generate the <li>s to match your labels.
}

И убедитесь, что вы изменили numericId на indexId везде.Есть пара других if(options.numeric) проверок, которые вы бы хотели изменить на if(options.numeric || options.indexLabels) тоже, но не на много.

Возможно, вы захотите также отправить патч автору, что было бы вежливо.

0 голосов
/ 19 августа 2011

Вы можете просто перезаписать их после загрузки галереи:

$(function(){
    // create gallery...

    var titles = ['Football', 'Rugby', 'Athletics', 'asdg', '...'];
    for(var i=0;i<titles.length;i++){
        $('#controls'+(i+1)+' a').html(titles[i]);
    }
});

edit: спасибо за скрипку: похоже, работает :))) http://jsfiddle.net/mHsuU/2/

...