我有一个表,我正在试图找到表中每个td的宽度。我尝试过各种变体:$("td")[0].width(),但它们都不起作用,每次都会出现错误:"Uncaught TypeError: $(...)[0].width is not a function"。
我先导入jQuery,然后导入其他JS文件(https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js),我使用的是.width()而不是.width。
有什么想法吗?
发布于 2016-01-04 15:05:43
$("td")[0]是一个DOM元素,而不是jquery对象。简单地将其包装为jquery $($("td")[0]).width()。
您需要获取每个td的宽度,这样您就可以使用以下内容
$.each('td', function() {
var currentTDWidth = $(this).width(); // more code here
});发布于 2016-01-04 15:05:51
使用eq(0)代替保留具有width()函数的jQuery对象。
发布于 2016-01-04 15:08:59
虽然您说我正在试图找到表中每个td的宽度,所以您需要使用.each()循环遍历tds。
$('td').each(function(){
alert($(this).width());
});要选择特定的td,有更多的方法
使用:eq()选择器
$('td:eq(0)'); // index start from 0或jquery中的.eq()
$('td').eq(0) // index start from 0或:nth-child()选择器
$('td:nth-child(1)'); // index start from 1https://stackoverflow.com/questions/34594003
复制相似问题