diff --git a/render/render.js b/render/render.js index fa4bbed1..d5c79b9a 100644 --- a/render/render.js +++ b/render/render.js @@ -500,7 +500,7 @@ module.exports = function($window) { if (typeof onevent === "function") onevent.call(element, e) return result } - if (key in element) element[key] = callback + if (key in element) element[key] = typeof value === "function" ? callback : null else { var eventName = key.slice(2) if (vnode.events === undefined) vnode.events = {} diff --git a/test-utils/domMock.js b/test-utils/domMock.js index 1e78f070..5da93b98 100644 --- a/test-utils/domMock.js +++ b/test-utils/domMock.js @@ -237,6 +237,7 @@ module.exports = function() { } if (typeof this["on" + e.type] === "function" && !isModernEvent(e.type)) this["on" + e.type](e) }, + onclick: null, } if (element.nodeName === "A") { diff --git a/test-utils/tests/test-domMock.js b/test-utils/tests/test-domMock.js index bbc898b2..edd896d5 100644 --- a/test-utils/tests/test-domMock.js +++ b/test-utils/tests/test-domMock.js @@ -559,6 +559,9 @@ o.spec("domMock", function() { $document.body.removeChild(div) }) + o("has onclick", function() { + o("onclick" in div).equals(true) + }) o("addEventListener works", function() { div.addEventListener("click", spy, false) div.dispatchEvent(e)