-2
我們可以偵聽和處理單個瀏覽器事件,但我們如何按順序偵聽事件組合?捕獲瀏覽器事件的條件組合序列
僞代碼,我們正在尋找這樣的事情:
element.on('click followed by mouse move', function() {
// do something
})
據我所知,我們可以在同一時間捕捉只是單一事件。有任何想法嗎?
我們可以偵聽和處理單個瀏覽器事件,但我們如何按順序偵聽事件組合?捕獲瀏覽器事件的條件組合序列
僞代碼,我們正在尋找這樣的事情:
element.on('click followed by mouse move', function() {
// do something
})
據我所知,我們可以在同一時間捕捉只是單一事件。有任何想法嗎?
有使用私有範圍和簡單的切換變量的簡單方法:
(function(){
// Nothing else can change this, because of it's private scope.
var clicked = false;
document.getElementById('test').addEventListener('click', function(){
clicked = clicked ? false : true;
});
document.getElementById('test').addEventListener('mousemove', function(){
if (clicked) {
console.log('moving while clicked.');
}
});
})();
#test {
width: 500px;
height: 500px;
border: 1px solid red;
background-color: #ccf;
}
<div id='test'></div>