помощь с искателем и селекторами - PullRequest
0 голосов
/ 19 ноября 2009

Я использую это:

 $(function() {

            // initialize scrollable
            window.api = $("div.scrollable").scrollable({
                clickable: true,
                activeClass: "active",
                onSeek: function() {
                    alert("current position is: " + this.getIndex());
                    //remove highlighting from all images
                    $(".items img").removeClass("selected");
                    var position = this.getIndex().toString();
                    var thisItem = $(".items:nth-child(" + position + ")");
                    //var thisItem = allItems(this.getIndex);
                    alert("item is: " + $(this).attr('alt'));
                    changeimage($(".items:nth-child(2)"));
                }
            }).circular().autoscroll({
                interval: 4000,
                api: true,
                autoplay: false,
                steps: 1

            });

        });

(только тестирование), чтобы я мог проанализировать текущий элемент в моей функции changeimage () Но все, что я получаю в своих оповещениях, не определено. Что мне нужно сделать, чтобы получить текущий элемент

1 Ответ

2 голосов
/ 09 декабря 2010

Вы можете получить текущий элемент, используя API, позвонив по следующему номеру:

var currentItem = window.api.getItems().eq(window.api.getIndex());

Функция getIndex () получает числовую позицию элемента, а getItems получает объект jquery со всеми элементами внутри него. Использование функции eq () запрашивает элемент в заданной позиции.

Мне иногда не везло с этим, но в обратном вызове onSeek вы должны иметь возможность использовать переменную 'this' вместо windows.api, которая будет выглядеть следующим образом:

var currentItem = this.getItems().eq(this.getIndex());
...