jquery - 想让整个TD小区成为 anchor

标签 jquery anchor html-table

我有一个<table>其中每个 <td>仅持有一个 anchor 。我希望用户能够单击单元格中的任意位置来访问该引用,而不仅仅是 anchor 文本本身。我想必须有一点 jQuery 才能轻松做到这一点。有人可以帮忙吗?

编辑:让事情变得复杂的是,我的 td有一些顶部和底部填充。一个display: block;规则在这种情况下似乎不起作用。我已经编辑了示例:

CSS:

table#mainmenu td {
    padding: 9px 8px 5px;
    border: none;
    border-bottom: 1px solid #ccc;
    border-left: 1px dotted; 
    text-align: left;
}

示例:

<table>
<tr>
  <td><a href="foo.html">Foo</a></td>
  <td><a href="bar.html">Bar</a></td>
</tr>
<tr>
  <td><a href="foobar.html">FooBar</a></td>
  <td><a href="barfoo.html">BarFoo</a></td>
</tr>
</table>

最佳答案

只需将 A 标记设置为 display: block

table td a {
  display: block;
}

http://jsfiddle.net/userdude/6VZ8t/

或者,如果您坚持使用 jQuery:

$('table td a').css('display','block');

http://jsfiddle.net/userdude/a2EAz/

编辑

由于我无法找到仅 CSS 的方法来选择子 A 的父 TD,因此该解决方案确实使用了 jQuery:

function doTablePadding() {
    $td = $('table td');
    $td.has('a').css('padding','0');
    padding = $td.not(':has(a)').css('padding-top') + " ";
    padding += $td.not(':has(a)').css('padding-right') + " ";
    padding += $td.not(':has(a)').css('padding-bottom') + " ";
    padding += $td.not(':has(a)').css('padding-left') + " ";
    $td.children('a').css('padding',padding);
}
doTablePadding();
$('table tbody').append("<tr><td>Stuff</td><td><p>Other stuff</p></td></tr>");
$('table tbody').append('<tr><td><a href="foo.html">Foo</a></td><td><a href="bar.html">Bar</a></td></tr>');
doTablePadding();

http://jsfiddle.net/userdude/Mekjg/1

请注意,这是从 $(document).ready(); 运行的。

编辑2

由于 mu 太短注释,负边距应该有效(并且没有 jQuery):

td {
    padding: 5px;
    background: #0ff;
    border: 1px solid black;
}
td a {
    display: block;
    margin: -5px;
    padding: 5px;
    background: #f0f;
}

http://jsfiddle.net/ambiguous/seqpp/

关于jquery - 想让整个TD小区成为 anchor ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5613987/

相关文章:

c# - ListBox Shift-Click Multi-Select Anchor 设置不正确

HTML 表 : THEAD width depending on TBODY in Chrome

html - 如何使表格标题居中?

html - 无法垂直对齐表格单元格中的链接

javascript - Rails 4 - 具有依赖字段 rails 的条件 JS

javascript - asp.net 如何让网站达到全宽和全高

html - 固定页眉与页内 anchor 重叠

JQuery 切换菜单,如果在其外部单击 hide()

javascript - 如何将 css 类应用于特定表格列和行?

css - 尝试实现 :hover On Nav Bar with Custom Images