diff --git a/source/Ox/js/DOM.js b/source/Ox/js/DOM.js index 2c66b791..a497e326 100644 --- a/source/Ox/js/DOM.js +++ b/source/Ox/js/DOM.js @@ -2,8 +2,10 @@ /*@ Ox.$ Generic HTML element, mimics jQuery - (str) -> Element object - str Tagname ('') or selector ('tagname', '.classname', '#id') + value <*> `window`, `document`, html element, tagname or selector + Passing a tagname ('') creates an element, passing a selector + ('tagname', '.classname' or '#id') selects an element. + (value) -> Element object > Ox.$('
').addClass('red').hasClass('red') true > Ox.$('
').addClass('red').removeClass('red').hasClass('red') @@ -22,9 +24,11 @@ Ox.$ Generic HTML element, mimics jQuery '' > Ox.$('').val('red').val() 'red' + > !!Ox.$('
').on({click: function(e) { Ox.test(e.type, 'click'); }}).trigger('click') + true @*/ Ox.$ = Ox.element = function(value) { - var element = !Ox.isString(value) ? value // window or document + var element = !Ox.isString(value) ? value // window, document or element : value[0] == '<' ? document.createElement(value.slice(1, -1)) : value[0] == '#' ? document.getElementById(value.slice(1)) : value[0] == '.' ? document.getElementsByClassName(value.slice(1))[0] @@ -247,6 +251,15 @@ Ox.$ = Ox.element = function(value) { return this.css({display: 'block'}); }, /*@ + trigger Triggers an event + @*/ + trigger: function(event) { + var e = document.createEvent('MouseEvents'); + e.initEvent(event, true, true); + this[0].dispatchEvent(e); + return this; + }, + /*@ val Gets or sets the value property of this element () -> Value (value) -> This element