Bunu yaptım ve Windows XP'de Firefox 3.5'te çalışıyor. Üzerinde bazı metinler, bir görüntü bindirme ve tüm tıklamaları kesen şeffaf bir div içeren bir kutu gösterir.
<div id="menuOption" style="border:1px solid black;position:relative;width:100px;height:40px;">
sometext goes here.
<img id="imgOverlay" src="w3.png" style="z-index:4;position:absolute;top:0px;left:0px;width:100px;height:40px;" \>
<a href="javascript:alert('Hello!')" >
<div id="mylinkAction" style="z-index:5;position:absolute;top:0px;left:0px;width:100px;height:40px;">
</div>
</a>
</div>
Yaptığım şey: Bir div oluşturdum ve onu bir menü seçeneğinin boyutlandırılabileceği şekilde boyutlandırdım, 100x40px (rastgele bir değer, ancak örneği göstermeye yardımcı oluyor).
Div, bir görüntü kaplamasına ve bir bağlantı kaplamasına sahiptir. Bağlantı, 'menuOption' div ile aynı boyutta bir div içerir. Bu şekilde bir kullanıcı tıklaması tüm kutu boyunca yakalanır.
Test ederken kendi resminizi sağlamanız gerekecektir. :)
Uyarı: Menü düğmenizin kullanıcı etkileşimine yanıt vermesini bekliyorsanız (örneğin, bir düğmeyi simüle etmek için rengi değiştirmek), etiket üzerinde çalıştıracağınız javascript'e eklenmiş ekstra koda ihtiyacınız olacaktır, bu ekstra kod ' menuOption 'elementini DOM aracılığıyla ve rengini değiştirin.
Ayrıca, bir tıklama olayını alıp görünür bir sayfa öğesinin altındaki bir öğeye kaydettirebileceğinizi bilmediğim başka bir yol yok. Bunu bu yaz da denedim ve bundan başka bir çözüm bulamadım.
Bu yardımcı olur umarım.
Not: Tuhaf moddaki olaylar üzerine yazma, tarayıcılarda olayların nasıl davrandığını anlamama yardımcı olmak için uzun bir yol kat etti.