diff --git a/src/diff/props.js b/src/diff/props.js index 18d15ed7ae..65410aabea 100644 --- a/src/diff/props.js +++ b/src/diff/props.js @@ -66,13 +66,8 @@ export function setProperty(dom, name, value, oldValue, namespace) { else if (name[0] == 'o' && name[1] == 'n') { useCapture = name != (name = name.replace(CAPTURE_REGEX, '$1')); - // Infer correct casing for DOM built-in events: - if ( - name.toLowerCase() in dom || - name == 'onFocusOut' || - name == 'onFocusIn' - ) - name = name.toLowerCase().slice(2); + // Infer correct casing for events: + if (name[2].toLowerCase() != name[2]) name = name.toLowerCase().slice(2); else name = name.slice(2); if (!dom._listeners) dom._listeners = {}; diff --git a/test/browser/events.test.js b/test/browser/events.test.js index ef4f990e49..666f107626 100644 --- a/test/browser/events.test.js +++ b/test/browser/events.test.js @@ -58,7 +58,7 @@ describe('event handling', () => { expect( proto.addEventListener ).to.have.been.calledOnce.and.to.have.been.calledWithExactly( - 'OtherClick', + 'otherclick', sinon.match.func, false );