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...

gist.github.com

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

blog.patricktriest.com

Sometimes modern Javascript projects get out of hand. A major culprit in this can be the messy handling of asynchronous...

You should prefer native promises to jQuery's Deferreds. Native promises are much faster than their jQuery equivalent. Native promises...

Native promises have no methods to inspect their state. You can use the promiseState function below to check whether a...

I often see the use of || to set a default value for a variable that might be nil, null or...

Capybara clears cookies before each scenario, but not other client-side data stores. If your app is using localStorage or...

Webpack is the future. We're using it in our latest Rails applications. For tests, we want to compile assets...

This card will show you a cool way to define a class using Struct.new. A common usecase for Structs are...

makandra dev

ChromeDriver clicking works by simulating a mouse click in the middle of the element's first client rect (or bounding...

Middleman is a static page generator that brings many of the goodies that Rails developers are used to.

makandra dev

This card compares patterns to store trees in a relation database like MySQL or PostgreSQL. Implementation examples are for the...

makandra dev
javascript.info

To move elements around we should be familiar with coordinates. Most JavaScript methods deal with one of two coordinate systems...

medium.com

As web developers, we know how easy it is to end up with web page bloat. But loading a webpage...

stackoverflow.com

window.getSelection().toString(); Browser support: IE9+, Android 4.3+, Safari 5+

developer.mozilla.org

You can easily have a JavaScript hash/object that returns a default value for unset keys/properties -- as long as you need...

There seems to be a nasty bug in Chrome 56 when testing with Selenium and Capybara: Slashes are not written...

Just like we use gems on the server, we use third party JavaScript libraries in the browser. These typically provide...

medium.freecodecamp.com

Collection of useful tools in the Chrome JavaScript console. Make the whole page editable This is not special to Chrome...