#Geometry of 2D & 3D figures with
##2D figures
| Area | Circumference |
|---|
| /* Clearfix | |
| ---------------------------------------*/ | |
| .cf:before, | |
| .cf:after { | |
| content:""; | |
| display:table; | |
| } | |
| .cf:after { clear:both } | |
| .cf { *zoom:1 } |
| * { | |
| -webkit-box-sizing: border-box; | |
| -moz-box-sizing: border-box; | |
| box-sizing: border-box; | |
| } |
| var arr = { | |
| max: function(array) { | |
| return Math.max.apply(null, array); | |
| }, | |
| min: function(array) { | |
| return Math.min.apply(null, array); | |
| }, | |
| range: function(array) { |
| var sudo = (function(arr, obj) { | |
| [ | |
| ['forEach', arr, 'each'], | |
| ['map', arr], | |
| ['indexOf', arr], | |
| ['filter', arr], | |
| ['hasOwnProperty', obj, 'has'], | |
| ['toString', obj] | |
| ].forEach(function(method) { | |
| var fn = method[1][method[0]]; |
| // call.js | |
| // chainable setTimeout and setInterval JavaScript wrapper | |
| // | |
| // By Daniel Hug: https://gist.github.com/Daniel-Hug/9062765 | |
| // MIT license: http://hug.mit-license.org/ | |
| // | |
| // use: | |
| // var timer = call(fn, scope, args).after(1000).start(); | |
| // var interval = call(fn, scope, args).every(1000).fire().start(); | |
| // timer.stop(); |
#Geometry of 2D & 3D figures with
##2D figures
| Area | Circumference |
|---|
| //addEventListener polyfill 1.0 / Eirik Backer / MIT Licence | |
| (function(win, doc){ | |
| if(win.addEventListener)return; //No need to polyfill | |
| function docHijack(p){var old = doc[p];doc[p] = function(v){return addListen(old(v))}} | |
| function addEvent(on, fn, self){ | |
| return (self = this).attachEvent('on' + on, function(e){ | |
| e = e || win.event; | |
| e.preventDefault = e.preventDefault || function(){e.returnValue = false} | |
| e.stopPropagation = e.stopPropagation || function(){e.cancelBubble = true} |
| { | |
| "content": "Wierd Char --> 
 <--" | |
| } |
| function arrayTo2d(items, width) { | |
| var rows = []; | |
| var lastRow; | |
| items.forEach(function(item, i) { | |
| // add another row when cell index is divisble by width | |
| if ((i) % width === 0) { | |
| lastRow = []; | |
| rows.push(lastRow); | |
| } |
| // Make strings safe for innerHTML and attribute insertion (templates): | |
| var escapeHTML = (function() { | |
| var entityMap = { | |
| '&': '&', | |
| '<': '<', | |
| '>': '>', | |
| '"': '"', | |
| "'": ''' | |
| }, | |
| re = /[&<>"']/g; |