Вставка VAL в: nth-child (X) не будет работать - PullRequest
1 голос
/ 10 марта 2011

Почему я не могу использовать SlideNumber внизу ... ?? Я пытался изменить var SlideNumber = 3; на SlideNumber = 3;, но, честно говоря, я шарил в темноте.

if(window.location.hash != '') {
    var SlideNumber = 3;
    $('.slideshow').cycle({
        fx: 'blindY', // choose your transition type, ex: fade, scrollUp, shuffle, etc...
        speed:  700,
        cleartype:  1,
        startingSlide: $(window.location.hash).index(),
        timeout: 3000,
          after: function(curr,next,opts) {             
            $("#menu ul li:nth-child(SlideNumber)").addClass("active");
            ready = true;
          } 

    });

Заранее спасибо.

Ответы [ 2 ]

3 голосов
/ 10 марта 2011

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

$("#menu ul li").eq(slideNumber-1).addClass("active");
2 голосов
/ 10 марта 2011

Чтобы объединить вашу переменную SlideNumber в ваш селектор, вам нужно разбить вашу строку и выделить вашу переменную между + операторами:

$("#menu ul li:nth-child(" + SlideNumber + ")").addClass("active");

В противном случае ваш селектор псевдокласса будет просто выглядеть какстрока ":nth-child(SlideNumber)", которая не совсем соответствует вашим намерениям.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...