我在设计时创建了一个表,并在运行时向其中添加了行。 我想将鼠标悬停事件附加到第一列的每一行,显示相应的工具提示。
for(ctr=0;ctr<noOfRows;ctr++){
var myTable=document.getElementById("myTable");
var newRow = myTable.insertRow(1);
var cell0 = newRow.insertCell(0);
cell0.innerHTML="Cell Data"+"<div class='hiddenToolTip' id='tip"+ctr+"'>"+tooltip+"</div>";
cell0.onmouseover=function(){
$("#tip"+ctr).show('blind',500);
};
cell0.onmouseout=function(){
$("#tip"+ctr).hide();
};
}
问题是'ctr'变量总是作为'onmouseover'和'onmouseout'函数内的最高值。
答案 0 :(得分:2)
只需在函数参数中传递它,并使用元素的id
获取ctrl的值,如下所示cell0.onmouseover=function()
{
$(this).children("div[id^='tip'] ").show('blind',500);
};
请检查此示例:Javascript: Adding OnMouseOver And OnMouseOut Using DOM