a hrefを検索し、行全体をクリック可能にするためのテーブルとこのコードがあります。
$(document).ready( function() {
$('table tr').click(function() {
var href = $(this).find("a").attr("href");
if(href) {
window.location = href;
}
});
ただし、問題が1つあります。それは、右クリックで「新しいタブでリンクを開く」オプションやウィンドウなどが通常のahrefリンクのように表示されないことです。
テーブルの代わりにdivを使用することはオプションではありません。
それを修正する方法は?
私のためにそれを修正できるjQueryプラグインはありますか?
私のテーブルは次のようになります(tdが多いほど大きくなりますが、説明のためだけです):
<table>
<tr>
<td>
<a href="http://example.com">Some link</a>
<span>Bla bla bla</span>
</td>
<td>
<span>Some text</span>
</td>
</tr>
<tr>
<td>
<a href="http://someotherlink.com">Some link</a>
<span>Other text</span>
</td>
<td>
<span>Something else</span>
</td>
</tr>
<tr>
...
</tr>
</table>
編集:現在のコードのように、ahref値を自動的に取得する必要があります:$(this).find( "a")。attr( "href");
編集2:私はtr全体をクリック可能にする必要があります(ブロックとして)。これは、上記の方法を使用して可能です。ただし、行をクリックして[新しいタブでリンクを開く]を選択することはできません。このオプションは、ahrefにカーソルを合わせた場合にのみ使用できます。しかし、私はそれが列全体にもある必要があります。したがって、ユーザーがマウスの中ボタンを使用して複数の新しいタブを開くか、右クリックしてコンテキストメニューから[新しいタブで開く]を選択する場合は、それを実行できます。現在、それは不可能です。