将VAL插入:nth-​​child(X)将不起作用

时间:2011-03-10 15:48:05

标签: javascript jquery jquery-selectors

为什么我不能在底部使用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 个答案:

答案 0 :(得分:3)

要添加,您可以使用.eq过滤方法(采用从零开始的索引)来避免连接并提高性能:

$("#menu ul li").eq(slideNumber-1).addClass("active");

答案 1 :(得分:2)

要将SlideNumber变量连接到您的选择器,您需要拆分字符串并将变量夹在+运算符之间:

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

否则,您的伪类选择器将只显示为字符串":nth-child(SlideNumber)",这与您的意图不同。