2010-07-20 27 views
7

我有一個div內的鏈接,我需要讓整個DIV可點擊...發現幾個教程在互聯網上,但他們的非工作對我來說...構成一個整體的div點擊

+0

你能在這裏的什麼是不工作的粘貼一些代碼片段? – 2010-07-20 17:46:05

+0

正如我在互聯網上看到的,我應該將display:block屬性添加到div,但它不起作用......除了我找到一個javascript解決方案,但它並沒有工作:http:// css-tricks。 com/snippets/jquery/make-entire-div-clickable/ – 2010-07-20 17:49:05

+1

爲什麼這被標記爲css?應該是JavaScript。 – Nick 2010-07-20 17:51:12

回答

10

如果你想讓整個div可點擊進行導航,那麼你可以用一個不符合標準的anchor()標籤或者將css樣式添加到包含的錨標籤中,使其成爲包含div的大小,這符合標準。在這個例子中,我將使用一個250px×250px的div:

<div id="container"><a href="" style="display:block;width:250px;height:250px;">Link</a></div> 
+0

這正是我正在尋找的。謝謝!!! – 2010-07-20 18:07:39

+1

爲什麼不符合a標準中的'div'?是否有一個有用的資源,指明哪些元素可以駐留在哪裏(我意識到內聯塊級別不正確,但是......)? – Eric 2010-07-20 18:10:24

+0

內聯元素中不能包含塊顯示元素。那就對了。它不會在瀏覽器中破壞您的代碼,但它很可能不會正確驗證。 很高興我可以幫助,萊瓦尼。 – 2010-07-21 01:00:19

21

原始的JavaScript :

<div onclick="alert('You clicked me !')">Click Me</div> 

的jQuery:

$('#div_id').click(function(){ 
    alert('Clicked !!'); 
}); 

更新:(參照您的鏈接)

<div class="myBox"> 
    blah blah blah. 
    <a href="http://google.com">link</a> 
</div> 

的jQuery:

$(".myBox").click(function(){ 
    window.location=$(this).find("a").attr("href"); 
    return false; 
}); 

上面的代碼取消鏈接的默認操作(將鏈接)與return false並綁定click事件到div與類myBox,然後它發現鏈接的src屬性中的div和window.location用於將頁面重定向到src屬性的div內存在的鏈接。所以這基本上使div可點擊。

6

去年我遇到了這個問題。我只是在div上添加了一個onclick。像這樣:<div id="testimonial" style="cursor:pointer;" onclick="document.location='http://www.mysite.com/testimonials.html'">

+0

短而脆 - 正是我所需要的! Thankx! – DerWOK 2014-03-01 12:09:44

1

在HTML5現在是有效的有DIV或任何一個一個內。這應該夠了吧。沒有腳本需要,除非這是你的鏈接。

0

您可以使用JavaScript代碼實現您的目標, 請看看this tutorial

$(".myBox").click(function(){ 
    window.location=$(this).find("a").attr("href"); 
    return false; 
    }); 

,這是HTML例子:

<div class="myBox"> 
    blah blah blah. 
    <a href="http://google.com">link</a></div> 

但有一個取巧的辦法來實現這個使用CSS代碼 你必須巢您的div標籤內的錨標記,你必須應用此財產吧,

display:block; 

當你這樣做,就會使整個寬度區域點擊(而定位標記的高度內),如果要覆蓋整個區域的div你畝t將錨標記的高度正好到div標籤的高度,例如:

height:60px; 

這會讓整個區域點擊,那麼你可以申請text-indent:-9999px錨標記要達到的目標。

這真的很棘手和簡單,它只是使用CSS代碼創建的。

這裏是一個examplehttp://jsfiddle.net/hbirjand/RG8wW/