1

これはおそらく、適用可能性の可能性よりもプライバシーへの懸念によって動機付けられた質問ですが、Chrome または Firefox でユーザーが右クリックして「要素を検査」を選択したイベントを取得するイベント ハンドラーを作成する方法はありますか?

これに対する明確な答えがない場合、右クリック メニュー選択のイベントを処理する方法はありますか?

4

2 に答える 2

2

私がまとめたフィドル、mousedown イベントがあった要素に関するすべての情報を取得できます

document.addEventListener('contextmenu', function(e) {
    e.preventDefault();
}, false);

document.addEventListener("mousedown", function(e) {
    console.log(e); // you can inspect the click event

    $this = $('.cmenu');

    if (e.which === 3){ // right click = 3, left click = 1
        $this.addClass('open');
        $this.css({
            'left': e.pageX - $this.width() / 2,
            'top': e.pageY - $this.height()
        });
    }else if(e.which === 1 && e.target.nodeName == "HTML"){
        $this.removeClass('open');
    }
});

http://jsfiddle.net/MKBdv/1/

于 2013-06-06T05:08:07.093 に答える
1

event をリッスンしclick、右クリックかどうかを確認できます。

document.addEventListener("mousedown", function(e) {
    console.log(e); // you can inspect the click event

    if (e.which === 3) { // right click = 3, left click = 1
        alert("right click");
    }
});

// prevent context menu show up
document.addEventListener('contextmenu', function(e) {
    e.preventDefault();
}, false);
于 2013-06-06T04:20:03.560 に答える