2015-06-05 69 views
-4

我是一個應該具有觸發函數的onclick函數的cog符號。當我點擊它不起作用。它有絕對的定位是否重要?我怎樣才能解決這個問題?onclick是否適用於任何定位?

我用這個HTML:

<div id="cogdiv" onclick="theme()"> 
    <h1 id="cog" class="themechange fa fa-cog" onclick="theme()"></h1> 
</div> 

和這個JS:當我在控制檯運行

var theme = function() { 
    document.getElementById('themes').style.animation = "themesappear 2s forwards"; 
    document.getElementById('themes').style.WebkitAnimation = "themesappear 2s forwards"; 
}; 

的功能工作。

檢查元素here瞭解更多代碼。

+1

請在此處添加有意義的代碼和問題描述。不要只是鏈接到需要修復的網站 - 否則,一旦問題解決,這個問題將會給未來的訪問者帶來任何價值。發佈一個證明你的問題的[簡短的,自包含的,正確的例子(SSCCE)](http://www.sscce.org/)將幫助你得到更好的答案。有關更多信息,請參見[我網站上的某些內容不起作用。我可以只粘貼一個鏈接嗎?](http://meta.stackexchange.com/questions/125997/)謝謝! – Cerbrus

+0

如果您在實際問題中發佈代碼,而不是未來可能會消失的外部鏈接,則最好。這樣,這個問題對於其他人在未來的長遠發展是有用的。 – Kmeixner

+0

不,它不會 - 如果元素位於另一個阻擋鼠標的元素的後面,請考慮一下 - 檢查z-index屬性,如果不嘗試添加一些。 –

回答

1

絕對定位有沒有影響關於onClick事件如何被觸發。

你只是定位您的元素下面的另一個元素,所以另一個元素是阻止鼠標事件


嘗試添加到您的CSS:

#cogdiv { 
z-index: 9999; //or greater, or 1. Just make sure it's bigger than the overlapping element's z-index 
} 

什麼z-index和閱讀起來CSS stack-order也可能有所幫助。

+0

這還沒有完全解決它。 OP在仍然覆蓋齒輪的頁面上有不同的元素。 – Cerbrus

+0

@Cerbrus我知道,但我當然不打算在這個問題上解釋CSS文檔流:) - 他知道現在發生了什麼,如果他想修復根,那麼這是另一個問題 –

+0

如果你不是要解決他的問題,那麼爲什麼要麻煩回答呢?你的回答沒有解決任何問題 – Cerbrus