多个“if”语句?

时间:2013-10-18 20:20:51

标签: javascript if-statement

如果我想按住SHIFT 右键单击以执行某项功能,我需要在此处更改哪些内容?

JAVASCRIPT

function myfunction(e) {
if (Input.GetMouseButtonDown(1))
if (e.shiftKey==1) {
//dostuff
}
}

HTML

<input onContextMenu="myfunction(e)" />

2 个答案:

答案 0 :(得分:3)

仅当您右键单击某些内容时才会触发onContextMenu事件,因此请不要检查按下了哪个鼠标按钮。只需查看e.shiftKey

function myfunction(e){
    if(e.shiftKey){
        // Do Stuff
    }
}

另外,请确保将event传递给函数:

<input onContextMenu="myfunction(event)" />

或者更好的是,不要使用内联事件处理程序,并使用addEventListener将事件绑定到JavaScript中。

编辑:您还可以使用onclick事件,并检查是否右键单击(应为2):

function myfunction(e){
    if(e.button === 2 && e.shiftKey){
        // Do Stuff
    }
}

然后做:

<input onClick="myfunction(event)" />

答案 1 :(得分:1)

e.which对应于按下的鼠标按钮。右键单击3。

Here's一个小提琴,展示了如何测试换档 - 右键单击​​输入。