This gist shows how to create a GIF screencast using only free OS X tools: QuickTime, ffmpeg, and gifsicle.
To capture the video (filesize: 19MB), using the free "QuickTime Player" application:
| upstream tunnel { | |
| server 127.0.0.1:3000; | |
| } | |
| server { | |
| listen 80; | |
| server_name dev.codeplane.com br.dev.codeplane.com; | |
| location / { | |
| proxy_set_header X-Real-IP $remote_addr; |
| // | |
| // SVG — hasClass, addClass, removeClass, toggleClass | |
| // Source: | |
| // https://gist.github.com/branneman/8436956 | |
| // Taken and adapted from: | |
| // http://toddmotto.com/hacking-svg-traversing-with-ease-addclass-removeclass-toggleclass-functions/ | |
| // | |
| if (SVGElement && SVGElement.prototype) { |
| // MIT: http://opensource.org/licenses/MIT | |
| angular.module('app', []); | |
| angular.module('app').controller | |
| ( 'MainCtrl' | |
| , function($scope,$locale) { | |
| $scope.currentYear = new Date().getFullYear() | |
| $scope.currentMonth = new Date().getMonth() + 1 | |
| $scope.months = $locale.DATETIME_FORMATS.MONTH |
All of the below properties or methods, when requested/called in JavaScript, will trigger the browser to synchronously calculate the style and layout*. This is also called reflow or layout thrashing, and is common performance bottleneck.
Generally, all APIs that synchronously provide layout metrics will trigger forced reflow / layout. Read on for additional cases and details.
elem.offsetLeft, elem.offsetTop, elem.offsetWidth, elem.offsetHeight, elem.offsetParent