日期:2014-05-16  浏览次数:20429 次

JQ里的.eq()函数问题。
JScript code

if (document.getElementById('navNow') != null) {

    var num1 = parseInt($('#navNow .f').text());

    $('#abc .nv ').eq(num1).addClass('temp_hover');
}




num1有获取到值,是个数字。
但是在第三行时,代码就无效了。
把第三行改成固定的DIV名字才有效,如:
$('#abc .nv5').addClass('temp_hover');

问题出在.eq(num1)这里,求指点。


------解决方案--------------------
$('#abc .nv ') //.nv 后确定要空格?
$('#abc .nv ') 或 $('#abc .nv') 确定能获取到对象,而且不是一个?
$('#abc .nv').eq(num1)有没有超出获取对象的下标?
------解决方案--------------------
有两个问题说下,1.#navNow本来就是ID,唯一的,你用Jquery取对象的时候直接$('#navNow'),而不是$('#navNow .f');2.$('#abc .nv ').eq(num1)中$('#abc .nv ')是对像,而num1是值,所以肯定不会执行
------解决方案--------------------
if($('#abc .nv ').length < num1 ){
你代码有问题
}

------解决方案--------------------
第三行语法错了吧??