47 lines
		
	
	
	
		
			955 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
	
		
			955 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
define(function () {
 | 
						|
 | 
						|
	var 
 | 
						|
		exports = {};
 | 
						|
 | 
						|
	// Extremely naive implementations of .html() and .append()
 | 
						|
	exports.html = function (string) {
 | 
						|
		this.forEach(function (element) {
 | 
						|
			element.innerHTML = string;
 | 
						|
		});
 | 
						|
		return this;
 | 
						|
	};
 | 
						|
 | 
						|
	exports.append = function (string) {
 | 
						|
		this.forEach(function (element) {
 | 
						|
			element.innerHTML += string;
 | 
						|
		});
 | 
						|
		return this;
 | 
						|
	};
 | 
						|
 | 
						|
	exports.first = function () {
 | 
						|
		return this[0];
 | 
						|
	};
 | 
						|
 | 
						|
	// Naive implementations of .on()
 | 
						|
	exports.on = function (eventName, callback) {
 | 
						|
		this.forEach(function (element) {
 | 
						|
			if (element.addEventListener) {
 | 
						|
				element.addEventListener(eventName, callback, false);
 | 
						|
			} else if (element.attachEvent) {
 | 
						|
				element.attachEvent('on' + eventName, callback);
 | 
						|
			}
 | 
						|
		});
 | 
						|
		return this;
 | 
						|
	};
 | 
						|
 | 
						|
	exports.focus = function () {
 | 
						|
		// It doesn't make sense to focus all matched elements. So we settle for the first one
 | 
						|
		if(this[0]) {
 | 
						|
			this[0].focus();
 | 
						|
		}
 | 
						|
		return this;
 | 
						|
	};
 | 
						|
 | 
						|
	return exports;
 | 
						|
 | 
						|
});
 |