Heim  >  Artikel  >  Web-Frontend  >  jQuery: Mousedown- und Click-Konfliktereignisse

jQuery: Mousedown- und Click-Konfliktereignisse

黄舟
黄舟Original
2017-06-28 09:23:212893Durchsuche

MausEreignis, im Allgemeinen wird die Taste zur Unterscheidung der Maustasten verwendet (DOM3-Standard schreibt vor: Das Klickereignis kann nur die linke Taste überwachen und die Maustasten können nur durch Mousedown und Mouseup beurteilt werden):

1. Linke Maustaste = 0

2. Rechte Maustaste = 2

3. Mausradtaste = 1

p.onmousedown = function (e) {
    var event = e || window.event;
    if(event.button == 2){
        console.log('right');
    }else if(event.button == 0){
        console.log('left');
    }
}

Lösung zum Klicken auf Konflikt zwischen Ereignissen (verwenden Sie den Zeitpunkt des Auftretens des Ereignisses, um festzustellen, ob die Zeit des Klickereignisses kurz ist)

<span style="color: #000000">var key = false;//设置了一个标志 false为点击事件 ture为鼠标移动事件
var firstTime = 0;
var lastTime = 0;
p.<a href="http://www.php.cn/wiki/1449.html" target="_blank">onclick</a> = function() {
    if(key){
        console.log(&#39;click&#39;);
        key = false;
    }
}
p.onmousedown = function() {
    firstTime = new Date().getTime();
    console.log(&#39;mouseDown&#39;);
}
p.<a href="http://www.php.cn/wiki/1459.html" target="_blank">onmouseup</a> = function() {
    console.log(&#39;mouseUp&#39;);<br/>//鼠标抬起后 记录时间 超过200ms就是移动事件
    lastTime = new Date().getTime();
    if( (lastTime - firstTime) </span><span style="color: #0000ff"><</span><span style="color: #800000"> 200</span><span style="color: #ff0000">){
        key </span><span style="color: #0000ff">= true;    </span><span style="color: #ff0000">}
}</span>

Das obige ist der detaillierte Inhalt vonjQuery: Mousedown- und Click-Konfliktereignisse. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn