在 JQuery 中使用重叠层和链接
tr________________________________________________________________________________ | td | td | td | | 复选框 | 内容 | 内容 ___________| |________|____________________________________|_______________|_a____链接_____|
我有一个填充了值的表,其中一些内容包含太多文本,因此我使用 jquery 函数来截断超过限制的文本内容。truncate 函数在文本末尾附加一个链接以取消截断/扩展文本内容。
例如“The Quick brown fox jumps over the”将显示“The Quick brown fox [more]”([more] 是展开它的链接)。
现在我的问题是我已经构建了页面以在您单击行上的任意位置(tr 标签)时选择/取消选择复选框,但我不希望当我单击链接时复选框受到影响,即因为链接(标签)与行重叠( tr 标签)。
我已经研究过使用选择器过滤掉 a 标签,并使用 span 或 div 将它们嵌入到链接下方,以防止与基本行发生任何交互。我设法使用 div 和 span 阻止点击一个区域,但它只会阻止点击如果 css 位置设置为绝对,在这种情况下,多个 div 或 span 将在一行中相互重叠,而不是在每个链接上重叠。
如果我能做这样的事情,这会更简单:
$("tr").each(function(){ if($(this).find("a").is("clicked"){ //什么都不做 }else{ if($(this).find( "tr").is("clicked"){ //切换复选框 });
} });
我只需要执行一个 if 语句来检查是否单击了行中的链接或链接并在此基础上执行操作。