In previous articles I have written about how to track elements when they enter or leave the browsers viewport. The reason why you might want to track this is when you are doing a test on an element that is outside the viewport on page initialisation, you don't want to count this as a visitor immediately but only when the element is scrolled into view. If the (changed) element is seen by the visitor, you fire an event, not before. In the past I accomplished this by using … [Read more...] about Notify Enter Viewport the proper way: Intersection Observer.
Sometimes we are testing a page element or component that, when the page has loaded, lies outside of the viewport. This has the simple consequence that you should not count this page load as a visitor to your test. Only when the element you are testing scrolls into view, the visitor can be added to your test. To accomplish this, we needed some code that keeps track of the elements position on the page with regard to the page's dimensions. This one still relies on jQuery, … [Read more...] about Notify Enter Viewport
If you write AB tests with jQuery you have to make sure you write your code as optimised as possible. Every millisecond you shave off results in less chance of unwanted repaint or reflow flickers. Update: Tip number 1: Do NOT use jQuery! Why wait for a library to load, when vanilla JS nowadays does everything jQuery does - but faster. Use Faster Selectors. Know which selectors perform the fastest to optimise your code! Use Caching. Basically every time you … [Read more...] about AB Test jQuery Performance Cheat Sheet