我一直在试图弄清楚为什么我不能将名为timepos的变量传递给jquery中的td:eq(),而我尝试的任何方法似乎都无效。
这是代码的相关部分:
var timepos = 0; function count() { var secs; secs = Number(time_chunks[2]); secs++; if ((secs == 00) || (secs % 5 == 0)) { for (i = 0; i < 6; i++) { $('.gridclassscrolled tbody tr:eq(' + i + ') td:eq(' + timepos + ')').find('.txttime').css("background-color", "yellow"); }; timepos = timepos + 1; }; }
这没用。如果我将td:eq(' + timepos + ')替换为整数,它将起作用,但不会像我需要的那样递增。我也尝试过使用parseInt。当我警告变量timepos时,它清楚地打印出一个递增的整数。我很困惑为什么它不起作用。
最佳答案
您试图在timepos循环外增加。这意味着for将始终为零。
for (i = 0; i < 6; i++) { $('.gridclassscrolled tbody tr:eq(' + i + ') td:eq(' + timepos + ')').find('.txttime').css("background-color", "yellow"); timepos++; };