2017-10-26 2 views
0

Gibt es eine Möglichkeit zu bestimmen, ob ein Benutzer speziell auf die horizontale Bildlaufleiste oder die vertikale Bildlaufleiste geklickt hat (auch wenn der Benutzer es zieht) . Ich möchte diese Informationen verwenden, um bestimmte Dinge auf meiner Webseite zu tun.Bestimmt, wo geklickt wurde Vertikale oder horizontale Bildlaufleiste in meiner Webseite

+0

Willkommen bei Stack-Überlauf. Bitte klären Sie, ob Sie nur ein Klick-Ereignis in der Bildlaufleiste erkennen möchten oder ob eine Bildlaufleiste verschoben wurde. – Twisty

Antwort

0

Ein kurzer Test in FireFox, die vom Browser selbst erstellte Bildlaufleiste ist kein Teil des gerenderten HTML oder DOM.

$(function() { 
    $("*").click(function(e) { 
    console.log(e.target); 
    }).scroll(function(e) { 
    console.log(e.target); 
    }); 
}); 

https://jsfiddle.net/Twisty/4ow21vp6/

So können Sie ein Klick-Ereignis sehen, dass nicht ausgelöst wird. Es erlaubt nicht einmal einen Rechtsklick, um die Bildlaufleiste zu überprüfen. Es wird unmöglich sein, ein "Klicken" zu erkennen. Andere Ereignisse können jedoch helfen.

0

Sie können scrollevent verwenden, um die Bewegung der Bildlaufleiste zu erkennen und festzustellen, ob der Benutzer nach oben/unten/links/rechts geht.

var lastScrollTop = 0; 
 
var lastScrollLeft = 0; 
 
$(window).scroll(function(event){ 
 
    var st = $(this).scrollTop(); 
 
    if (st > lastScrollTop){ 
 
     // downscroll code 
 
    } else { 
 
     // upscroll code 
 
    } 
 
    lastScrollTop = st; 
 
    
 
    var documentScrollLeft = $(this).scrollLeft(); 
 
    if (documentScrollLeft>lastScrollLeft){ 
 
     // scroll right code 
 
    }else{ 
 
     // scroll left code 
 
    } 
 
});

Verwandte Themen