Javascript 用键盘按钮打开桌子
我有这张桌子,我可以用键盘按钮进入那张桌子吗? 例如,如果我按下“W”,我将在[2,1]中,如果我按下键盘“E”上的按钮,我将在[3,1]上。我的表格代码与您看到的此图类似Javascript 用键盘按钮打开桌子,javascript,php,html,jquery,Javascript,Php,Html,Jquery,我有这张桌子,我可以用键盘按钮进入那张桌子吗? 例如,如果我按下“W”,我将在[2,1]中,如果我按下键盘“E”上的按钮,我将在[3,1]上。我的表格代码与您看到的此图类似 function draw_empty_board() { var t = '<table id="chess_table">'; for (var i = 2; i > 0; i--) { t += '<tr>'; t += '<td cla
function draw_empty_board() {
var t = '<table id="chess_table">';
for (var i = 2; i > 0; i--) {
t += '<tr>';
t += '<td class="line_label">' + i + '</td>';
for (var j = 1; j < 13; j++) {
t += '<td class="chess_square" id="square_' + j + '_' + i + '"></td>';
}
t += '</tr>';
}
t += '<tr><td class="column_label line_label"></td>';
for (var j = 1; j < 13; j++) {
t += '<td class="column_label">' + j + '</td>';
}
t += '</tr>';
t += '</table>';
$('#chess_board').html(t);
}
函数绘图\u空\u板(){
var t='';
对于(变量i=2;i>0;i--){
t+='';
t+=''+i+'';
对于(var j=1;j<13;j++){
t+='';
}
t+='';
}
t+='';
对于(var j=1;j<13;j++){
t+=''+j+'';
}
t+='';
t+='';
$('chess#u board').html(t);
}
以下是示例:
函数选择文本(containerid){
if(document.selection){//IE
var range=document.body.createTextRange();
range.moveToElementText(document.getElementById(containerid));
range.select();
}else if(window.getSelection){
var range=document.createRange();
range.selectNode(document.getElementById(containerid));
getSelection().removeAllRanges();
window.getSelection().addRange(范围);
}
}
设activeRow=1;
设activeColumn=1;
让rowCount=2;
让columnCount=13;
函数绘图\u空\u板(){
var t='';
对于(var i=rowCount;i>0;i--){
t+='';
t+=''+i+'';
对于(var j=1;j{
开关(电子钥匙){
案例“w”:
案例“W”:
if(activeRow1){
活动行--;
}
打破
案例“d”:
案例“D”:
如果(activeColumn1){
活动列--;
}
打破
违约:
打破
}
选择文本(`square\${activeColumn}{activeRow}`);
})
}
window.addEventListener('load',(事件)=>{
画一张空纸板();
选择文本(`square\${activeColumn}{activeRow}`);
键盘控制();
});
以下是示例:
函数选择文本(containerid){
if(document.selection){//IE
var range=document.body.createTextRange();
range.moveToElementText(document.getElementById(containerid));
range.select();
}else if(window.getSelection){
var range=document.createRange();
range.selectNode(document.getElementById(containerid));
getSelection().removeAllRanges();
window.getSelection().addRange(范围);
}
}
设activeRow=1;
设activeColumn=1;
让rowCount=2;
让columnCount=13;
函数绘图\u空\u板(){
var t='';
对于(var i=rowCount;i>0;i--){
t+='';
t+=''+i+'';
对于(var j=1;j{
开关(电子钥匙){
案例“w”:
案例“W”:
if(activeRow1){
活动行--;
}
打破
案例“d”:
案例“D”:
如果(activeColumn1){
活动列--;
}
打破
违约:
打破
}
选择文本(`square\${activeColumn}{activeRow}`);
})
}
window.addEventListener('load',(事件)=>{
画一张空纸板();
选择文本(`square\${activeColumn}{activeRow}`);
键盘控制();
});
请详细说明。如果单击了w,则如何(2,1)?请详细说明。(2,1)如果点击了w怎么办?我在桌子上有图像,现在它们消失了..我在桌子上有图像,现在它们消失了。。
function selectText(containerid) {
if (document.selection) { // IE
var range = document.body.createTextRange();
range.moveToElementText(document.getElementById(containerid));
range.select();
} else if (window.getSelection) {
var range = document.createRange();
range.selectNode(document.getElementById(containerid));
window.getSelection().removeAllRanges();
window.getSelection().addRange(range);
}
}
let activeRow = 1;
let activeColumn = 1;
let rowCount = 2;
let columnCount = 13;
function draw_empty_board() {
var t = '<table id="chess_table">';
for (var i = rowCount; i > 0; i--) {
t += '<tr>';
t += '<td class="line_label">' + i + '</td>';
for (var j = 1; j < columnCount; j++) {
t += '<td class="chess_square" id="square_' + j + '_' + i + '">' + j + ',' + i + '</td>';
}
t += '</tr>';
}
t += '<tr><td class="column_label line_label"></td>';
for (var j = 1; j < 13; j++) {
t += '<td class="column_label">' + j + '</td>';
}
t += '</tr>';
t += '</table>';
document.body.innerHTML = t;
}
function keyboardControl() {
document.body.addEventListener('keyup', (e) => {
switch (e.key) {
case 'w':
case 'W':
if (activeRow < rowCount) {
activeRow++;
}
break;
case 's':
case 'S':
if (activeRow > 1) {
activeRow--;
}
break;
case 'd':
case 'D':
if (activeColumn < columnCount - 1) {
activeColumn++;
}
break;
case 'a':
case 'A':
if (activeColumn > 1) {
activeColumn--;
}
break;
default:
break;
}
selectText(`square_${activeColumn}_${activeRow}`);
})
}
window.addEventListener('load', (event) => {
draw_empty_board();
selectText(`square_${activeColumn}_${activeRow}`);
keyboardControl();
});