Skip to content

Instantly share code, notes, and snippets.

View roden0's full-sized avatar
🎯
Focusing

Rodrigo Encinas roden0

🎯
Focusing
  • Barcelona
View GitHub Profile
@roden0
roden0 / createrequest.js
Last active December 17, 2015 18:49
Cross-browser way to create XMLHttpRequest object. http://rest.elkstein.org
function createRequest() {
var result = null;
if (window.XMLHttpRequest) {
// FireFox, Safari, etc.
result = new XMLHttpRequest();
if (typeof xmlhttp.overrideMimeType != 'undefined') {
result.overrideMimeType('text/xml'); // Or anything else
}
}
else if (window.ActiveXObject) {
@roden0
roden0 / notemplate_jquery.js
Created May 27, 2013 08:36
Templates with Mustache.js
$.each(messages.reverse(), function(index, message) {
$('#messageList').append(
'<li><span class="list-title">' +
message.userName + '</span>' +
'<abbr class="list-timestamp" title="' +
message.datePosted + '"></abbr>' +
'<p class="list-text">' + message.messageText + '</p></li>');
}
});
@roden0
roden0 / address.js
Last active December 17, 2015 18:49
AJAX demo
window.onload = function() {
var url = "http://example.org/address_from_postcode.txt?postcode=";
var fieldsets = document.getElementsByTagName("fieldset");
for (var foo in fieldsets) {
if (fieldsets[foo].className == "address") {
var textareas = fieldsets[foo].getElementsByTagName("textarea");
for (var bar in textareas) {
if (textareas[bar].className == "address") {
fieldsets[foo].address = textareas[bar];
break;
@roden0
roden0 / form.html
Created May 27, 2013 10:18
Angular JS. Validation.
<form data-ng-app="form-example" class="row form-horizontal" novalidate>
<div class="control-group">
<label class="control-label" for="inputEmail">Email</label>
<div class="controls">
<input type="email" id="inputEmail" placeholder="Email" data-ng-model="email" required>
<div class="input-help">
<h4>Invalid Email</h4>
</div>
</div>
</div>
<a href="#" title="blabla" data-poload="/test.php">blabla</a>
$('*[data-poload]').bind('hover',function(){
var e=$(this);
e.unbind('hover');
$.get(e.data('poload'),function(d){
e.popover({content: d}).popover('show');
});
});
@roden0
roden0 / dry.js
Last active December 17, 2015 18:59
Jquey Best practices.
// Bad
$("a").click(function(e) {
$(this).addClass("active");
$(this).parent().siblings().find("a").removeClass("active");
var o = $(this).offset();
});
// Better
$("a").click(function(e) {
var $t = $(this),
@roden0
roden0 / color.js
Created May 27, 2013 13:56
Javascript constructor. Color
unction Color(r, g, b) {
this.r = r;
this.g = g;
this.b = b;
}
Color.prototype.getAverage = function () {
var total = this.r + this.g + this.b;
var avg = total / 3;
return parseInt(avg, 10);
var LoggerFactory = {
getLogger: function() {
return window.console;
},
//log
};
/* Example Usage */
var logger = LoggerFactory.getLogger();
logger.log("something to log");
@roden0
roden0 / objecthasproperty.js
Created May 28, 2013 09:05
Javascript objects. Check if object has property.
var obj = {
a: undefined,
b: null,
c: false
};
// a, b, c all found
for ( var prop in obj ) {
document.writeln( "Object1: " + prop );
}