您需要使用 document.onKeyDown 捕获按下 Ctrl 键的事件。
在您的事件处理程序中,检查是否按下了“Ctrl”(键码 17),如下所示:
function document_keyDown(e) {
var KeyID = (window.event) ? event.keyCode : e.keyCode;
if (KeyID == 17) {
ctrlDown = true;
}
}
在这里,我将“ctrlDown”变量设置为 true。
对于 onKeyUp 事件,您可以完全相反:
function document_keyUp(e) {
var KeyID = (window.event) ? event.keyCode : e.keyCode;
if (KeyID == 17) {
ctrlDown = false;
}
}
然后,在您的列元素的单击事件中,您可以检查 Ctrl 是否已被单击:
function columnElement_click() {
if (ctrlDown != undefined && ctrlDown == true)
alert("Ctrl + Click Received");
return false;
}
确保您的列单击处理程序返回 false。否则,浏览器将执行代码,然后导航到链接的“href”属性中的地址。
希望这可以帮助。
(另见:http ://www.geekpedia.com/tutorial138_Get-key-press-event-using-JavaScript.html )