Exemplo n.º 1
0
const onScroll = (): ?Promise<any> => {
    if (!taskQueued) {
        const viewport = getViewport();
        taskQueued = true;

        return fastdom.read(() => {
            taskQueued = false;

            const iframeIds = Object.keys(iframes);

            if (useIO) {
                visibleIframeIds.map(getDimensions).forEach(data => {
                    sendCoordinates(data[0], data[1]);
                });
            } else {
                iframeIds
                    .map(getDimensions)
                    .filter(isIframeInViewport, viewport)
                    .forEach(data => {
                        sendCoordinates(data[0], data[1]);
                    });
            }
        });
    }
};
Exemplo n.º 2
0
 layer2Animation() {
     let inViewB;
     if (
         this.params.layerTwoAnimation === 'enabled' &&
         isEnhanced() &&
         !isIE10OrLess
     ) {
         inViewB =
             getViewport().height > this.adSlot.getBoundingClientRect().top;
         fastdom.write(() => {
             if (this.layer2) {
                 this.layer2.classList.add(
                     `ad-scrolling-text-hide${
                         this.params.layerTwoAnimationPosition
                             ? `-${this.params.layerTwoAnimationPosition}`
                             : ''
                     }`
                 );
             }
             if (this.layer2 && inViewB) {
                 this.layer2.classList.add(
                     `ad-scrolling-text-animate${
                         this.params.layerTwoAnimationPosition
                             ? `-${this.params.layerTwoAnimationPosition}`
                             : ''
                     }`
                 );
             }
         });
     }
 }