2016-11-29 87 views
3

我有div2(height 20px vertical align centre)里面div1(100px)和div2有锚标记。Div悬停指针

悬停的div1我正在显示手形指针,但也想在点击任何地方点击div1区域时,它应该导航到锚点标记网址。更多的细节

.test:hover { 
 
    cursor: pointer; 
 
    cursor: hand; 
 
}
<div class="test" style="height:100px"> 
 
    <div style=" position: relative; top: 50%; transform: translateY(-50%);"> 
 
    <a href="google.com" ; target="_blank" title="This link opens in a new window" style="color:#2e3940;text-decoration: initial;">Pawan Kotak</a> 
 
    </div> 
 
</div>

enter image description here

+4

请发表你的实际的HTML和CSS,连同你的代码写试图解决这个自己的问题中 –

+0

<!DOCTYPE HTML> 页面标题

+0

@RoryMcCrossan我已附加的代码 –

回答

2

尝试用以下方式

$(div1).on("click",function(){ 
    window.location = $(this).find("a").attr("href"); 
}); 

这仅仅是一个出路。

2

假设你的DIV ID的是div1div2这里是一个解决方案,请参考图片。

$('#div1').on('click',function(){ 
    $(this).find('a').trigger('click'); 
}); 

该脚本将附加click事件的div1和当过用户点击这个div它找到a标签与它$(this).find('a'),并触发对锚标记click事件。

+0

多次事件获取一个为div和一个锚标记当我点击锚标记..如何我可以避免甚至 –

+0

@pawankotak多个触发器你可以做'event.stopimmediatepropagation()'这将停止冒泡的事件.. –

+0

我试过不行 –

4

如果外“DIV”的行为应该像一个锚,只是重新排序的元素是这样的:

<a href="myAnchor.tld"> 
    <div id="div1"> 
    <div id="div2"></div> 
    </div> 
</a> 

您不必更动jQuery的,如果您的标记可以简单地结构化的方式它真的有用。

1

你也可以增加你的锚标记(有几种方法/办法)

.test { 
 
    background-color: red; 
 
} 
 
.test a { 
 
    cursor: hand; 
 
    background-color: blue; 
 
    display: block; 
 
    line-height: 100px; 
 
}
<div class="test" style="height:100px"> 
 
    <div style=" position: relative; top: 50%; transform: translateY(-50%);"> 
 
    <a href="google.com" ; target="_blank" title="This link opens in a new window" style="color:#2e3940;text-decoration: initial;">Pawan Kotak</a> 
 
    </div> 
 
</div>

+0

我试过你的解决方案,但在我的情况下,一些多行文本也出现在创建问题的锚标记中。谢谢 –