<html xmlns="http://www.w3.org/1999/xhtml"> <!-- https://bugzilla.mozilla.org/show_bug.cgi?id=1119698 --> <head> <title>Test pointer events with image</title> <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> </head> <body onload="run()"> <script class="testbody" type="text/javascript"> <![CDATA[ SimpleTest.waitForExplicitFinish(); function run() { var svgDoc = document.getElementById('svg'); var div = document.getElementById("div"); // Get the coords of the origin of the SVG canvas: var originX = div.offsetLeft; var originY = div.offsetTop; var image4 = document.getElementById('image4'); var image5 = document.getElementById('image5'); var element; element = document.elementFromPoint(originX + 20, originY + 20); is(element, background, 'Should not hit visibility:hidden image by default'); element = document.elementFromPoint(originX + 120, originY + 20); is(element, background, 'Should not hit pointer-events:none image'); element = document.elementFromPoint(originX + 220, originY + 20); is(element, background, 'Should not hit pointer-events:visible visibility:hidden image'); element = document.elementFromPoint(originX + 320, originY + 20); is(element, image4, 'Should hit pointer-events:painted visibility:hidden image'); element = document.elementFromPoint(originX + 420, originY + 20); is(element, image5, 'Should hit pointer-events:stroke visibility:hidden image'); SimpleTest.finish(); } ]]> </script> <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1119698">Mozilla Bug 1119698</a> <p id="display"></p> <div id="content"> <div width="100%" height="1" id="div"> </div> <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="100%" height="100%" id="svg"> <rect id="background" width="100%" height="100%" fill="blue"/> <image x="10" y="10" width="100" height="100" visibility="hidden" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAAXNSR0IArs4c6QAAAAxJREFUCNdj+M/AAAADAQEAGN2NsAAAAABJRU5ErkJggg"/> <image x="110" y="10" width="100" height="100" pointer-events="none" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAAXNSR0IArs4c6QAAAAxJREFUCNdj+M/AAAADAQEAGN2NsAAAAABJRU5ErkJggg"/> <image x="210" y="10" width="100" height="100" pointer-events="visible" visibility="hidden" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAAXNSR0IArs4c6QAAAAxJREFUCNdj+M/AAAADAQEAGN2NsAAAAABJRU5ErkJggg"/> <image id="image4" x="310" y="10" width="100" height="100" pointer-events="painted" visibility="hidden" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAAXNSR0IArs4c6QAAAAxJREFUCNdj+M/AAAADAQEAGN2NsAAAAABJRU5ErkJggg"/> <image id="image5" x="410" y="10" width="100" height="100" pointer-events="stroke" visibility="hidden" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAAXNSR0IArs4c6QAAAAxJREFUCNdj+M/AAAADAQEAGN2NsAAAAABJRU5ErkJggg"/> </svg> </div> <pre id="test"> </pre> </body> </html>