Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is there a workaround for the Android browser bug with CSS-Position and clickable areas?

When you have some clickable content like <a>, <input> or <area> and before this you have an absolutely positioned element with a bigger z-index, there is the wrong behavior of 'click-through'.
I click on the area where the clickable element is behind the front element. In other browsers there is the right behavior that the click does not go through the front element. But only in Android Browser you can click through the front element and activate the element behind. This is a known bug and you cannot avoid it. It's even in newer versions (I test on 2.3.3 in the official Android emulator).

There are some workarounds described in some forums but none of them worked for me.

  • I tried to put an <iframe> or an <a> between front and back
  • I tried to change the DOM so maybe the browsers state is refreshed
  • I tried to have the back elements be positioned as well None worked

I'm especially having problems with the image map's area elements.

Has anyone had the same issue and managed to work around it? I'm specifically interested in solutions which are tested against image maps.

like image 394
yunzen Avatar asked Jan 17 '12 10:01

yunzen


1 Answers

I am wondering about a few things here. First, what is the purpose of having an overlaid image and using the image maps? I see you're including jQuery - can you use the hover event with jQuery to change the orientation of the images and do the swap? What about attaching to the click event for the image map, and checking to see if the lightbox is open. If it is, then return false;.

Just trying to think out loud. Sometimes another take on it can be helpful.

like image 162
Joseph at SwiftOtter Avatar answered Oct 27 '22 13:10

Joseph at SwiftOtter