Javascript 使用<;a>;可单击并div,不带<;a>;不可点击
我有以下javascript代码:Javascript 使用<;a>;可单击并div,不带<;a>;不可点击,javascript,php,jquery,html,Javascript,Php,Jquery,Html,我有以下javascript代码: <script> $(".ucp_link").click(function() { window.location = $(this).find("a").attr("href"); return true; }); </script> $(“.ucp_链接”)。单击(函数(){ window.location=$(this.find(“a”).attr(“href”); 返回true; }); 这个h
<script>
$(".ucp_link").click(function() {
window.location = $(this).find("a").attr("href");
return true;
});
</script>
$(“.ucp_链接”)。单击(函数(){
window.location=$(this.find(“a”).attr(“href”);
返回true;
});
这个html代码:
<div class="ucp_menu"><div class="ucp_inner"><h4>all item</h4><div class="ucp_link"><a href="p.php?p=">item1</a></div><div class="ucp_link">item 2</div></div></div>
所有项目项目2
我想使带有链接的div可单击,但不允许没有链接的div。只需使用
:has()
选择器检查ucp\u link
元素中是否有link
元素
$(“.ucp\u链接:有(a)”。单击(函数(){
window.location=$(this.find(“a”).attr(“href”);
返回true;
});代码>
所有项目
项目2
我假设包装div
是样式化的,这就是为什么要这样做
你并不需要javascript,相反,你可以使用css让链接覆盖div
例如:
.ucp_link {
position: relative;
}
.ucp_link a {
position: absolute;
top: 0;
left: 0;
bottom: 0;
right: 0;
}
如果包装器div
未设置样式(无填充等),则只需:
.ucp_link a {
display: block;
}
$(“div>a”)。单击(function(){});这与php有什么关系?