2012-06-14 3 views
1

Мы создаем сетку html динамически. Это имеет более 5000 строк и 10 столбцов (это может расти). В настоящее время мы добавляем атрибут «title» для отображения всплывающей подсказки при наведении указателя мыши. Поскольку мы добавляем атрибут ко всем ячейкам 5000x10, требуется некоторое время, чтобы добавить все эти атрибуты и сделать jQuery немного тяжелым. Я хочу знать, есть ли лучший и эффективный способ показа всплывающей подсказки при наведении и уменьшении/уменьшении jQuery? Я не уверен, можем ли мы использовать делегаты() или какой-либо другой вариант?Как сделать свет jquery для сетки html?

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>'; 
    } 
    . 
    . 
} 
+0

Напишите свой HTML и не храните его как массив. Вы наверняка будете уверены в безопасности памяти. Вместо того, чтобы делать 'rw []' just do '$ ('element'). Append (data);' –

+0

@ Так я, извините, но вы правы, я должен вернуться и рассмотреть мои предыдущие вопросы. Но не знаете, как я могу отфильтровать все мои вопросы, которые я еще не принял? –

ответ

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

// create the tooltip element here; 

}); 
+2

+1 для поведения по требованию! –

1

Вместо того, чтобы дублировать текст Td в атрибуте заголовка или хранить его в данных, просто использовать текст TD установить атрибут заголовка при наведении курсора.

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

Адрес jsFiddle.

Смежные вопросы