60 lines
1.7 KiB
HTML
60 lines
1.7 KiB
HTML
<html>
|
|
<head>
|
|
<script>
|
|
function log(s)
|
|
{
|
|
document.getElementById('console').appendChild(document.createTextNode(s + "\n"));
|
|
}
|
|
|
|
function changeHandler()
|
|
{
|
|
log ('PASS: change event fired.\n');
|
|
}
|
|
|
|
function blurHandler()
|
|
{
|
|
log ('blur event fired.\n');
|
|
}
|
|
|
|
function test()
|
|
{
|
|
if (window.testRunner)
|
|
testRunner.dumpAsText();
|
|
|
|
// Test for select that's not inside a form element
|
|
var menu1 = document.getElementById('menu1');
|
|
menu1.focus();
|
|
|
|
if (window.testRunner) {
|
|
// change the option selection
|
|
eventSender.keyDown('e');
|
|
}
|
|
// hit enter
|
|
var enterEvent = document.createEvent("KeyboardEvents");
|
|
enterEvent.initKeyboardEvent("keypress", true, false, window, "Enter", 0, false, false, false, false, false);
|
|
menu1.dispatchEvent(enterEvent);
|
|
|
|
// Test for select is inside a form element
|
|
var menu2 = document.getElementById('menu2');
|
|
menu2.focus();
|
|
|
|
if (window.testRunner) {
|
|
// change the option selection
|
|
eventSender.keyDown('e');
|
|
}
|
|
// hit enter
|
|
menu2.dispatchEvent(enterEvent);
|
|
}
|
|
</script>
|
|
</head>
|
|
<body onload="test()">
|
|
<p>This test verifies that the ENTER key fires the change event for popups.</p>
|
|
<hr>
|
|
<select id="menu1" onchange="changeHandler()" onblur="blurHandler()"><option>abcd</option><option>efgh</option></select>
|
|
<form onsubmit="return false;">
|
|
<select id="menu2" onchange="changeHandler()" onblur="blurHandler()"><option>abcd</option><option>efgh</option></select>
|
|
</form>
|
|
<pre id="console"></pre>
|
|
</body>
|
|
</html>
|