18 background-color: blue;
30 <script src=
"../../resources/js-test.js"></script>
32 <body onload=
"runtest()" style=
"margin:0">
34 <script type=
"text/javascript">
38 var hoveredText
= '\"Hovered.\"';
41 if (!window
.testRunner
|| !window
.eventSender
)
44 if (!window
.internals
|| !window
.internals
.setIsCursorVisible
) {
45 debug("window.internals.setIsCursorVisible is required to run this test.");
49 testRunner
.waitUntilDone();
51 redDiv
= document
.getElementById('red');
53 document
.addEventListener('keydown', function(e
) {
54 redDiv
.parentNode
.removeChild(redDiv
);
57 debug("Mouse is visible, moving it over the red div.");
58 internals
.setIsCursorVisible(document
, true);
59 eventSender
.mouseMoveTo(175, 175);
60 blueText
= window
.getComputedStyle(document
.querySelector('#blue'), ':after').content
;
61 redText
= window
.getComputedStyle(document
.querySelector('#red'), ':after').content
;
62 shouldBeEqualToString("blueText", hoveredText
);
63 shouldBeEqualToString("redText", hoveredText
);
65 debug("Setting mouse cursor to be invisible.");
66 internals
.setIsCursorVisible(document
, false);
67 blueText
= window
.getComputedStyle(document
.querySelector('#blue'), ':after').content
;
68 redText
= window
.getComputedStyle(document
.querySelector('#red'), ':after').content
;
69 shouldBeEqualToString("blueText", hoveredText
);
70 shouldBeEqualToString("redText", hoveredText
);
72 debug("Deleting red div.");
73 eventSender
.keyDown("a");
74 window
.setTimeout(testAfterDelete
, 0);
77 function testAfterDelete()
79 blueText
= window
.getComputedStyle(document
.querySelector('#blue'), ':after').content
;
80 shouldBeEqualToString("blueText", hoveredText
);
81 testRunner
.notifyDone();
90 <p>Test for
<a href=
"http://crbug.com/240722">http://crbug.com/
240722</a>. If the mouse cursor is not visible, existing hover effects on a parent should be preserved if the child is the currently hovered element and is removed from the DOM. Press any key to delete the red div.
</p>
92 <div id=
"console"></div>