Skip to content

Instantly share code, notes, and snippets.

View dmjcomdem's full-sized avatar
🎯
Focusing

Dimonskiy dmjcomdem

🎯
Focusing
View GitHub Profile
@dmjcomdem
dmjcomdem / phoneMask.js
Last active May 17, 2018 19:58
phoneMask,js
class PhoneMask {
constructor(element) {
this.element = null;
this.phoneMask = this.phoneMask.bind(this)
this.init(element);
}
init(element) {
this.element = document.querySelector(element);
this.element.addEventListener('input', this.phoneMask);
@function classConcatNumber($className: '.class-', $from:1, $to:6) {
@if $from == $to {
@return '#{$className}#{$from}';
} @else {
@return '#{$className}#{$from},' + classConcatNumber($className, $from+1, $to);
}
}
#{classConcatNumber('.col-xs-', 1, 12)},
#{classConcatNumber('.col-sm-', 1, 12)} {
$breakpoints: (
"phone": 400px,
"phone-wide": 480px,
"phablet": 560px,
"tablet-small": 640px,
"tablet": 768px,
"tablet-wide": 1024px,
"desktop": 1248px,
"desktop-wide": 1440px
);
@dmjcomdem
dmjcomdem / disableScroll.js
Created May 6, 2018 06:20
canceling scroll these interaction events
// left: 37, up: 38, right: 39, down: 40,
// spacebar: 32, pageup: 33, pagedown: 34, end: 35, home: 36
var keys = {37: 1, 38: 1, 39: 1, 40: 1};
function preventDefault(e) {
e = e || window.event;
if (e.preventDefault)
e.preventDefault();
e.returnValue = false;
}
@dmjcomdem
dmjcomdem / ellipsis.css
Created April 29, 2018 07:27
ellipsis normal
.div {
width: 70px;
overflow: hidden;
text-overflow: ellipsis;
white-space: normal;
border: 1px solid #000;
}
@dmjcomdem
dmjcomdem / EventEmitter.js
Created April 15, 2018 06:09
simple class EventEmitter
class EventEmitter {
constructor() {
this.events = {};
}
on(type, listener) {
this.events[type] = this.events[type] || [];
this.events[type].push(listener);
}
@dmjcomdem
dmjcomdem / gist:63caaf6a4ec7e003320b582b8ae25794
Last active April 2, 2018 03:06
defineProperty Symbol.iterator
if (!(Symbol.iterator in Object.prototype)) {
Object.defineProperty(Object.prototype,Symbol.iterator,{
enumerable: false,
writable: false,
configurable: true,
value: function*() {
var o = this;
var ks = Object.keys(o);
for (var idx = 0, length = ks.length; idx < length; idx++) {
yield o[ks[idx]];
<input type="text"
autocomplete="off"
autocorrect="off"
autocapitalize="off"
spellcheck="false">
@dmjcomdem
dmjcomdem / font.css
Created February 26, 2018 06:40
Default font stack
body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI",
Helvetica, Arial, sans-serif,
"Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}
@dmjcomdem
dmjcomdem / delegation.js
Last active February 18, 2018 11:09
simple example delegation between objects
class Button {
constructor(color) {
this.element = null;
this.color = color;
this.onAdd = () => {};
this.onInit()
}
onInit() {
this.element = document.querySelector('button');