Available in Chrome 49+ | View on GitHub | Browse Samples
Previously, Chrome treated the first two arguments (type
and
listener
) of addEventListener
and removeEventListener
optional, while they are non-optional in the spec and other browsers. This has
changed: Now calling these methods with zero or one argument throws an
Exception.
ChromeSamples.log('Call document.body.addEventListener with no arguments.');
try {
document.body.addEventListener();
} catch (error) {
ChromeSamples.log('> ' + error.message + '\n');
}
ChromeSamples.log('Call document.body.addEventListener with one argument.');
try {
document.body.addEventListener('click');
} catch (error) {
ChromeSamples.log('> ' + error.message + '\n');
}
ChromeSamples.log('Call document.body.removeEventListener with no arguments.');
try {
document.body.removeEventListener();
} catch (error) {
ChromeSamples.log('> ' + error.message + '\n');
}
ChromeSamples.log('Call document.body.removeEventListener with one argument.');
try {
document.body.removeEventListener('click');
} catch (error) {
ChromeSamples.log('> ' + error.message + '\n');
}
// Example of valid usage:
var handler = function() {
// Do something.
};
document.body.addEventListener('click', handler);
document.body.removeEventListener('click', handler);