1

設計時にテーブルを作成し、実行時にテーブルに行を追加しました。それぞれのツールチップを表示する最初の列の各行にマウスオーバー イベントをアタッチしたいと考えています。

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' 関数内の最高値になることです。

4

1 に答える 1

2

これを関数引数に渡し、要素のIDを使用して以下のようにctrlの値を取得します

cell0.onmouseover=function()
{      
    $(this).children("div[id^='tip'] ").show('blind',500);    
    };

この例を確認してください: Javascript: DOM を使用して OnMouseOver と OnMouseOut を追加する

于 2012-04-12T10:12:49.173 に答える