我尝试了不同的jQuery方法:
var num = $(this).attr('colspan').text();
var num = $(this).attr('colspan').val();
var num = $(this).('td[colspan]').val();
var num = $(this).('td[colspan]').text();
var num = $(this).('td[colspan]').attr('id');
Run Code Online (Sandbox Code Playgroud)
这来自W3Schools: var num = document.getElementById($(this)).colSpan;
没运气.它在我的中是未定义的或未被捕获的TypeErrorconsole.log()
编辑:我已经尝试了你的建议,它仍然无法正常工作.以下是上下文中代码的一部分:
$('table td').on('mouseenter mouseleave', function(e){
var th, index, id, td;
if(e.type === 'mouseenter'){
id = $(this).attr('id');
td = $(this);
var num = $(this).attr('colspan');
console.log("td = "+td+" colspan = "+num);
td.addClass('highlight');
var $table_body_scroll=$('table.body_scroll'),
header_table=$( '<table aria-hidden="true" class="header_table"><thead><tr><td></td></tr></thead></table>' ),
scroll_div='<div class="body_scroll"></div>';
var $targetHeaderTable=$("table.header_table").eq(index);
$('thead tr th').each(function() {
console.log("th = "+$(this).text());
console.log("id = "+id);
if ($(this).text() == id)
{
var num = td.attr('colspan');
//console.log("td = "+td+" colspan = "+num);
$(this).addClass('highlight');
}
});
index = $('td').index($(e.target));
$(e.target).prevAll().addClass('highlight');
}else{
$('.highlight').removeClass('highlight');
}
});
Run Code Online (Sandbox Code Playgroud)
和我的控制台日志: td = [object Object] colspan = undefined
使用prop获得的属性/属性设置的值,这将反映在页面加载后,用JS的财产所作的任何更改:
$(this).prop("colSpan");
Run Code Online (Sandbox Code Playgroud)
JS小提琴: http ://jsfiddle.net/9u8L2/1
| 归档时间: |
|
| 查看次数: |
4837 次 |
| 最近记录: |