This is a well-known IE problem, I have been investigating several times, and the only way I know is already mentioned by @Gyum Fox is another iframe mask. However, you do not need to place the iframe βbetweenβ the elements - you can place an absolutely positioned iframe inside the corresponding element with 100% height and width . CSS iframe to fit inside an element:
iframe.ie-fix { position: absolute; border: none; top: 0; left: 0; height: 100%; width: 100%; z-index: -1; }
The problem is that jQuery dynamically constructs the contents of the menu, so we need to handle some events to insert a mask. This simple code adds a mask to all the menus on the page. Not a complete solution, however, the approach shows:
$('.ui-button').click(function() { $('.ui-menu').append("<iframe class='ie-fix' src='about:blank'></iframe>" ); });
Ideally, we only need to update the corresponding menu, but I need to dig deeper into jQuery sources, to do this, try contacting later.
JS Fiddle with a complete example
udalmik
source share