ユーザーがアンカータグが存在する親li要素をクリックしても、アンカータグがクリックされたとDOMに認識させたい。
<ul>
<li><a href="#">test1</a></li>
<li><a href="#">test2</a></li>
</ul>
ここでリンク「test1」は、テキストをクリックしたときにのみ機能しますが、li タグをクリックすると、リンクがターゲット ページに移動するようにします。
ユーザーがアンカータグが存在する親li要素をクリックしても、アンカータグがクリックされたとDOMに認識させたい。
<ul>
<li><a href="#">test1</a></li>
<li><a href="#">test2</a></li>
</ul>
ここでリンク「test1」は、テキストをクリックしたときにのみ機能しますが、li タグをクリックすると、リンクがターゲット ページに移動するようにします。
display:block
最初にCSSでa
タグ付けを試すことができます。a
タグが利用可能なすべてのスペースをに取っているわけではないと思いますli
。だからあなたはこの問題を抱えています。
$("ul li").click(function(){
window.location = $(this).find("a").attr('href');
});
クリックしてリンク、タグを作成しようとしていますが、クリックはアンカータグのデフォルトのイベントではないため、一般的な方法では不可能です。
click
次のように、前にハンドラーをa
タグにバインドし、後でそれを起動すると、これを行うことができます。
$('ul li a').on('click', function() {
window.location = this.href;
});
$("ul li").click(function(){
$(this).find("a").click(); // fire previous click event binded to anchor
});