Javascript 在单击圆时检测shitfKey是否已按下
我试图在单击Javascript 在单击圆时检测shitfKey是否已按下,javascript,google-maps,events,Javascript,Google Maps,Events,我试图在单击google.maps.circle(…)时检测是否按下了Shift键 宠儿 这个问题可能已经有了答案: 我有处理程序: myObj[id] = new google.maps.Circle({/*Initialization*/} myObj[id].addListener('click', function (event) { //Some code here myFunction(this, event); } 以及不起作用的功能 myFunction(elem,
google.maps.circle(…)
时检测是否按下了Shift键
宠儿
这个问题可能已经有了答案:
我有处理程序:
myObj[id] = new google.maps.Circle({/*Initialization*/}
myObj[id].addListener('click', function (event) {
//Some code here
myFunction(this, event);
}
以及不起作用的功能
myFunction(elem, event) {
console.log(event);
if(!event.shiftKey) { //Do Something }
}
它过去也可以工作,现在是Aa:
var shiftKey;
if (Object.keys(event).some(function (key) {
if (event[key] && 'shiftKey' in event[key]) {
shiftKey = event[key].shiftKey;
return true;
}
return false;
})) {
// We found it, `shiftKey` has the value
} else {
// ShiftKey is NOT pressed
}
尝试运行对象属性,但未检测到shiftKey
:
var shiftKey;
if (Object.keys(event).some(function (key) {
if (event[key] && 'shiftKey' in event[key]) {
shiftKey = event[key].shiftKey;
return true;
}
return false;
})) {
// We found it, `shiftKey` has the value
} else {
// ShiftKey is NOT pressed
}
我不能一直换东西。那么,什么是一种确定的、正确的方法来检测这个问题呢?无法找到使用文档修复它的方法,所以我必须按类型而不是按名称运行查找
MouseEvent
myFunction(elem, event) {
for (var key in event) {
if (event[key] instanceof MouseEvent) {
event["mouseEvent"] = event[key];
break;
}
}
if( event["mouseEvent"].shiftKey ){ //shiftKey is pressed }
}