Use matches polyfill instead of relying on DOM
Support space separated event names in delegate