Skip to content

Instantly share code, notes, and snippets.

View edgarberm's full-sized avatar
:octocat:
NaN

Edgar Bermejo edgarberm

:octocat:
NaN
View GitHub Profile
@edgarberm
edgarberm / SublimeOnSaveBuild partials
Last active August 29, 2015 14:21
No compile SASS partials from SublimeOnSaveBuild
{
"filename_filter": "(/|\\\\|^)(?!_)(\\w+)\\.(css|js|sass|less|scss)$",
"build_on_save": 1
}
/*
CSS:
.stick {
position: fixed;
margin: 30px 0 0 0;
top: 0;
}
.stick-bottom {
@edgarberm
edgarberm / getElementPosition.js
Last active August 29, 2015 14:19
Convert the returned position from document coordinates to viewport coordinates.
function getElementPosition ( element ) {
var x = 0,
y = 0;
for ( var e = element; e != null; e = e.offsetParent ) {
x += e.offsetLeft;
y += e.offsetTop;
@edgarberm
edgarberm / mobileDetect.js
Last active August 29, 2015 14:18
Detect mobile devices
var mobileDetect = function() {
var check = false;
(function(a){if(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|je
@edgarberm
edgarberm / deepExtend.js
Last active August 29, 2015 14:18
Extend method
Object.deepExtend = function ( opt, src ) {
for ( var p in src ) {
if ( src[ p ] && src[ p ].constructor && src[ p ].constructor === Object ) {
opt[ p] = opt[ p ] || {};
arguments.callee( opt[ p ], src[ p ] );
} else {
@edgarberm
edgarberm / shortOn.js
Created February 20, 2015 20:20
Extend JavaScript Array sortOn
Array.prototype.sortOn = function() {
var b = this.slice();
if (!arguments.length) return b.sort();
var e = Array.prototype.slice.call(arguments);
return b.sort(function(b, g) {
for (var h = e.slice(), c = h.shift(); b[c] == g[c] && h.length;) c = h.shift();
return b[c] == g[c] ? 0 : b[c] > g[c] ? 1 : -1
})
};
@edgarberm
edgarberm / copy.js
Last active August 29, 2015 14:13
The following code creates a copy of a given object.
function copy(o){
var copy = Object.create( Object.getPrototypeOf(o) );
var propNames = Object.getOwnPropertyNames(o);
propNames.forEach(function(name){
var desc = Object.getOwnPropertyDescriptor(o, name);
Object.defineProperty(copy, name, desc);
});
return copy;
@edgarberm
edgarberm / chrome-fonts-fix.css
Created December 6, 2014 15:46
Google Chrome font visualization fix
/* the fix! simply ADD this block BELOW the above block */
@media screen and (-webkit-min-device-pixel-ratio:0) {
@font-face {
font-family: 'MyWebFont';
src: url('webfont.svg#svgFontName') format('svg');
}
}
@edgarberm
edgarberm / snippets.css
Created December 1, 2014 12:35
CSS Snippets
/* Vertical align */
.verticalcenter{
position: relative;
top: 50%;
-webkit-transform: translateY(-50%);
-o-transform: translateY(-50%);
transform: translateY(-50%);
}
@edgarberm
edgarberm / millisecondsToSeconds.js
Created October 30, 2014 19:03
Converts a value in milliseconds to seconds
function millisecondsToSeconds(time) {
var m = Math.floor((((time % 31536000) % 86400) % 3600) / 60);
var s = (((time % 31536000)% 86400) % 3600) % 60;
if (s > 9) {
return m + ":" + Math.round(s);
} else {
return m + ":0" + Math.round(s);
}