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 / 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);
@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),
<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 / 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>
@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 / 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 / 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) {
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.min.js"></script>
</head>
<body>
<h2>Create some JSON object that is nested/structured from a form</h2>
<form id="form">
<input id="id" type="text" name="id" placeholder="id..." />
@roden0
roden0 / serializeObject.js
Created May 24, 2013 14:20
Convert form data to JS object with jQuery. http://www.tobiascohen.com/
$.fn.serializeObject = function()
{
var o = {};
var a = this.serializeArray();
$.each(a, function() {
if (o[this.name] !== undefined) {
if (!o[this.name].push) {
o[this.name] = [o[this.name]];
}
o[this.name].push(this.value || '');