49 lines
1.5 KiB
HTML
49 lines
1.5 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<body>
|
|
<script src="../../resources/js-test-pre.js"></script>
|
|
<script>
|
|
description("Tests support for 'passive' member in AddEventListenerOptions.");
|
|
|
|
var listenerCallCount = 0;
|
|
function passiveListenerFunction(ev)
|
|
{
|
|
++listenerCallCount;
|
|
ev.preventDefault();
|
|
}
|
|
|
|
function activeListenerFunction(ev)
|
|
{
|
|
++listenerCallCount;
|
|
ev.preventDefault();
|
|
}
|
|
|
|
evalAndLog("document.body.addEventListener('test', passiveListenerFunction, { 'passive': true })");
|
|
var testEvent1 = new Event('test', { 'cancelable': true });
|
|
evalAndLog("document.body.dispatchEvent(testEvent1)");
|
|
shouldBe("listenerCallCount", "1");
|
|
shouldBeFalse("testEvent1.defaultPrevented");
|
|
|
|
debug("");
|
|
listenerCallCount = 0;
|
|
// 'passive should be false by default.
|
|
evalAndLog("document.body.addEventListener('test', activeListenerFunction, { })");
|
|
var testEvent2 = new Event('test', { 'cancelable': true });
|
|
evalAndLog("document.body.dispatchEvent(testEvent2)");
|
|
shouldBe("listenerCallCount", "2");
|
|
shouldBeTrue("testEvent2.defaultPrevented");
|
|
document.body.removeEventListener('test', activeListenerFunction);
|
|
|
|
debug("");
|
|
listenerCallCount = 0;
|
|
evalAndLog("document.body.addEventListener('test', activeListenerFunction, { 'passive': false })");
|
|
var testEvent2 = new Event('test', { 'cancelable': true });
|
|
evalAndLog("document.body.dispatchEvent(testEvent2)");
|
|
shouldBe("listenerCallCount", "2");
|
|
shouldBeTrue("testEvent2.defaultPrevented");
|
|
|
|
</script>
|
|
<script src="../../resources/js-test-post.js"></script>
|
|
</body>
|
|
</html>
|