As a web developer, you know Google Analytics (GA). Probably you've dropped the GA snippet into more than one...

Why secure-only cookies used to be necessary Cookies have an optional secure flag. It tells the browser to not...

benmccormick.org

The linked article lists a number of techniques that were best practices with ES5, but have better alternatives in modern...

If possible your code should detect features, not browsers. But sometimes you just need to sniff the browser. And when...

CoffeeScript and JavaScript (ECMAScript) both have operators in and of. Each language use them for more than one purpose. There...

github.com

Using the JS fullscreen API is painful because all browers use different methods and events and you need to use...

When your JavaScript bundle is so massive that you cannot load it all up front, I would recommend to load...

You know that you can use jQuery's text() to get an element's contents without any tags.

Webpacker uses Babel and Webpack to transpile modern JavaScript down to EcmaScript 5. Depending on what browser a project needs...

developer.mozilla.org

Touch devices have their own set of events like touchstart or touchmove. Because mobile browsers should also work with with...

jsfiddle.net

When you need test images, instead of using services like lorempixel or placehold.it you may generate test images yourself.

You need to update a lof gems. Make sure you don't have any version constraints in your...

makandracards.com

In Spreewald 1.10.4+, nested patiently blocks are now patient. Here is an example: patiently do outer_code patiently do

Form fields can be rendered as noneditable by setting the disabled or the readonly attribute. Be aware of the differences...

makandra dev
fontawesome.com

Font Awesome version 5 changed some icon names, and introduces new prefixes fab, far, and fas. There is a JavaScript...

To check if a method has been called in Jasmine, you first need to spy on it: let spy = spyOn...

jsbin.com

If you try to listen to events on elements that are nested inside a , Firefox will stop event propagation once...

By default, browsers will not wrap text at syllable boundaries. Text is wrapped at word boundaries only. This card explains...

Checking if a JavaScript value is of a given type can be very confusing: There are two operators typeof and...

You are not using javascript tests The file is served from a public folder (not via controller) Problem description...

makandra dev

An end-to-end test (E2E test) is a script that remote-controls a web browser with tools like Selenium...

Slides for Henning's talk on Sep 21st 2017. Understanding sync vs. async control flow Talking to synchronous (or "blocking...

reactarmory.com

The linked article shows how to exploit websites that include unsanitized user input in their CSS. Although the article often...

gist.github.com

Here is some JavaScript code that allows you to click the screen and get the clicked element's text contents...