2013-06-05 29 views
4

請我需要你的幫助,下面的代碼。我想添加一個onclick事件到整個DIV重定向到一個url,但我不能繞過包含在DIV內的子錨的href:如何從DIV重定向和旁路子錨點的href

ie(目標是重定向到google.com點擊任何地方圖像或文字):

<html> 
    <div onclick="location.href='http://www.google.com'"> 
    <div> 
     <a href="http://en.wikipedia.org/"> 
     <img height="200" width="200" src="http://upload.wikimedia.org/wikipedia/commons/6/63/Wikipedia-logo.png"> 
     </a> 
     Test 
    </div> 
    </div> 
</html> 

當我使用本地URL像「:/// E:文件/Documents/Blog/Design/Tmp1.html」這工作正常(我不知道爲什麼)。 謝謝。

更新:我加入這一要求背後的想法:我需要爲我的博客的指數節博客建立與同一程序,它使用針對個別文章。在索引中,我希望主Div中的每次點擊都重定向到Post,但在帖子內部,圖像中的點擊必須轉到圖像的href。我的想法是,「onclick」事件僅在索引部分中被添加到DIV中。

+0

您使用的是什麼瀏覽器?它適用於Firefox。 – Learner

+0

嗨,我也使用Firefox。也許我沒有很好地解釋自己,請閱讀我在問題中添加的「更新」。 –

回答

3

如果你在做這個內嵌的意圖(不推薦,但它是你的代碼),可以在return false;添加到內部錨:

<html> 
    <div onclick="location.href='http://www.google.com'"> 
    <div> 
     <a href="http://en.wikipedia.org/" onclick="return false;"> 
     <img height="200" width="200" src="http://upload.wikimedia.org/wikipedia/commons/6/63/Wikipedia-logo.png"> 
     </a> 
     Test 
    </div> 
    </div> 
</html> 

更新:根據您的要求的第2步(這是有很多原因一個可怕的,可怕的想法,但它的工作原理):

<html> 
    <div onclick="location.href='http://www.google.com'"> 
    <div> 
     <a href="http://en.wikipedia.org/" onclick="if (this.parentElement.parentElement.onclick) { return false; }" id="demo"> 
     <img height="200" width="200" src="http://upload.wikimedia.org/wikipedia/commons/6/63/Wikipedia-logo.png"> 
     </a> 
     Test 
    </div> 
    </div> 
</html> 
+0

太棒了,這有效,但我還有一個問題需要進一步解釋(我在請求中添加了這個)。 –

+0

如果我更改錨碼,我需要有時他自己的href繼續工作。我可以得到你的解決方案,但像「如果父母onclick不爲空然後返回false,否則使用錨href」? –

+0

@GustavoDiSalvo而不是增加新的問題,你原來的職位,你應該考慮標誌着一個有用的正確,並要求一個新的問題。當以這種方式更新現有問題時,它往往會使每個人都感到困惑的答案無效。 –

0

使用JavaScript設置一個onclick處理程序。該代碼會是這個樣子:

document.getElementById("mydiv").onclick = function(){ 
    // navigate to new page 
    window.location.href = 'URL'; 
} 

您將需要一個ID添加到您的股利和在的getElementById功能正常通過。如果你想在同一窗口中打開

<div onClick="window.open('http://www.google.com','_blank');"> 

變化_blank與_self:

+0

謝謝你,但結果是一樣的:圖像仍然使用自己的網址,而不是父div的一個。 –

+0

我不明白你在做什麼。你想要div點擊和圖片點擊去同一位置或不同的位置嗎? – StMotorSpark

0

您也可以嘗試這樣的事情。

+0

謝謝,但我想要的是點擊圖像去那個網址,而不是錨點的網址。我想我沒有正確解釋它。我在請求中添加了更多信息。 –