1

HTMLグリッドを動的に作成します。これには5000行以上と10列があります(これは大きくなる可能性があります)。現在、ホバー時にツールチップを表示するために、それぞれに「title」属性を追加しています。すべての5000x10セルに属性を追加しているため、これらすべての属性を追加してjQueryを少し重くするのに時間がかかります。ホバー時にツールチップを表示し、jQueryを削減/軽量化するためのより良い効率的な方法はありますか?デリゲート()または他のオプションを使用できるかどうかわかりませんか?

function RenderGrid(colDefs,data){    
    .
    .
    var data='';
    for (var col in columnDefs) {
      data = d[colDefs[col].columnId] || '';
      rw[++i] = '<td title="' + data + '">';
      rw[++i] = data;
      rw[++i] = '</td>';
    }
    .
    .
}
4

2 に答える 2

3
$('.element-class').on('hover', function () {

//   create the tooltip element here;

});
于 2012-06-14T14:23:27.840 に答える
1

title 属性で td テキストを複製したり、データに保存したりする代わりに、ホバーしたときに td テキストを使用して title 属性を設定するだけです。

$('td').on('hover', function () {
    $(this).attr("title", $(this).text());
});​

ここにjsFiddleがあります。

于 2012-06-14T14:30:12.483 に答える