for(var i=0;i<tr.length;i++){
var td = tr[i].getElementsByTagName("td");
if(td[2].innerHTML==time && td[3].innerHTML==cls){
td[0].setAttribute("id","focus");
tr[i].style.backgroundColor="green";
var foc = document.getElementById("focus");
foc.focus();
cnt++;
}
else{
tr[i].style.backgroundColor="transparent";
}
}
答案 0 :(得分:8)
这是一年太晚了,但你 CAN 专注于TD元素。只需给它一个tabindex属性,然后做一个focus()。
这适用于DIV元素和几乎所有其他元素。
我在Firefox 3.5及更高版本上试过这个。
答案 1 :(得分:2)
由于问题是关于改变TD或TR的焦点,所以答案是你不能专注于这样的HTML标签;您可以更改当前聚焦的元素(如果它是输入元素(文本区域,文本字段,复选框,无线电)或链接,当您单击键选项卡时,这些元素以特定方式突出显示。
如果你真的试图专注于输入领域,正如Jonathan Sampson所建议的那样,那么他给出的答案是正确的。
在你的代码中,你真的想把重点放在标签TD上,那么问题的答案就是否定。
答案 2 :(得分:1)
看来你有一个输入字段,其id为“焦点”在td内,所以我假设你想要专注于那个输入本身。使用jQuery,你会这样做:
$("input#focus").focus();
一旦调用,这将导致焦点被带到该特定元素。我看到你也尝试将特定TD的ID设置为“焦点”;每页只能使用一次唯一的ID值。如果您觉得需要使用单个值来表示许多元素,请考虑使用类名,因为页面上可以存在任意数量的类。