Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery-无法识别的表达式:li:n子级?_Jquery_Css Selectors - Fatal编程技术网

jQuery-无法识别的表达式:li:n子级?

jQuery-无法识别的表达式:li:n子级?,jquery,css-selectors,Jquery,Css Selectors,您好,当我尝试运行此脚本时,控制台显示: 未捕获的语法错误,无法识别的表达式:li:n子级 Althoung我在这个脚本之前链接了jQuery源代码 谢谢你的邀请 您可以使用.data(“foo”)来支持.attr(“data foo”) 你可以用。它是以零为基础的,这就是你想要的 您不需要在单独的行中调用.addClass() 使用parseInt()时必须使用基数10,否则像08这样的数字将被解释为八进制 您需要确保num实际上包含一个数字,或者parseInt()将返回NaN,这将中断以下

您好,当我尝试运行此脚本时,控制台显示:

未捕获的语法错误,无法识别的表达式:li:n子级

Althoung我在这个脚本之前链接了jQuery源代码

谢谢你的邀请

  • 您可以使用
    .data(“foo”)
    来支持
    .attr(“data foo”)
  • 你可以用。它是以零为基础的,这就是你想要的
  • 您不需要在单独的行中调用
    .addClass()
  • 使用
    parseInt()
    时必须使用基数
    10
    ,否则像
    08
    这样的数字将被解释为八进制
  • 您需要确保
    num
    实际上包含一个数字,或者
    parseInt()
    将返回
    NaN
    ,这将中断以下代码
  • 使用
    $
    为包含jQuery对象的变量添加前缀。这是一个有用的惯例
  • 尝试:

  • 您可以使用
    .data(“foo”)
    来支持
    .attr(“data foo”)
  • 你可以用。它是以零为基础的,这就是你想要的
  • 您不需要在单独的行中调用
    .addClass()
  • 使用
    parseInt()
    时必须使用基数
    10
    ,否则像
    08
    这样的数字将被解释为八进制
  • 您需要确保
    num
    实际上包含一个数字,或者
    parseInt()
    将返回
    NaN
    ,这将中断以下代码
  • 使用
    $
    为包含jQuery对象的变量添加前缀。这是一个有用的惯例
  • 尝试:


    $('body').attr('data-site')
    是否可以转换为一个数字?
    console.log(num,“.submenu li:n子菜单(+num+”)a”)
    这可能是因为'num'不是实际数字,请确保解析正确,并且'num'中实际有一个数字是
    $('body').attr('data-site')
    实际可转换为数字?
    console.log(num,.submenu li:n子菜单(+num+)
    这可能是因为'num'不是一个实际的数字,请确保解析是正确的,并且'num'中确实有一个数字。值得注意的是,
    :eq
    :nth child
    是非常不同的事情。他们的文档强调了这样一个事实:
    nth child
    是基于1的,但(更重要的是)它的功能不同:
    nth child
    检索属于其父级的第n个子级的任何元素。这可以是多个元素,具体取决于选择器
    eq
    检索所选内容中该索引处的单个元素。值得注意的是,
    :eq
    :n子元素
    是非常不同的东西。他们的文档强调了这样一个事实:
    nth child
    是基于1的,但(更重要的是)它的功能不同:
    nth child
    检索属于其父级的第n个子级的任何元素。这可以是多个元素,具体取决于选择器
    eq
    检索选择中该索引处的单个元素。
    (function (){
    
        var num = parseInt($('body').attr('data-site')) + 1,
            theul = $(".submenu li:nth-child(" + num + ") a"),
            newNum = num - 1,
            theNewUl = $(".submenu li:nth-child(" + newNum + ") a");
    
            console.log(theul);
            theul.addClass('activex');
            console.log(theNewUl);
            theNewUl.addClass('lastsl');
    
    })();
    
    var num = parseInt($('body').data("site"), 10),
        $theul = $(".submenu li:eq(" + num + ") a").addClass('activex'),
        $theNewUl = $(".submenu li:eq(" + (num-1) + ") a").addClass('lastsl');