OOP JS (L2)

by slawe

HTML

<div id="box"></div>

JavaScript

var myObject = {
    box: document.querySelector('#box'),
    iAm : 'an object',
    whatAmI : function(){
        this.box.innerHTML += ', I am ' + this.iAm + '.';
    }
};

function object(what){
    this.iAm = what,
    this.whatAmI = function() {
        myObject.box.innerHTML += 'OOP ' + this.iAm;
    };
}

var new_object = new object('JavaScript');
console.log(new_object.iAm);
new_object.whatAmI();
myObject.whatAmI();


function addEvent(to, type, fn) {
    if(document.addEventListener) {
        to.addEventListener(type, fn, false);
    } else if(document.attachEvent) {
        to.attachEvent('on'+type, fn);
    } else {
        to['on'+type] = fn;
    }   
}

var handler = function() {
  alert('This ' + this.nodeName + ' have content: "' + this.innerHTML +'"');
};

addEvent(myObject.box, 'click', handler);