Ich versuche etwas zu erreichen, ich bin mir nicht sicher, wird jemals funktionieren. Ich möchte den Zellfokus ändern, wenn der Benutzer eine Buchstabentaste drückt. Ich wünsche auch, dass der Buchstabe in der Quellzelle, aber nicht in der Zielzelle erscheint. Was ich versucht zu tun ist:ändern Zelle Fokus auf Tastendruck
Benutzer eine Zelle markiert durch Anklicken
table.onclick = function tableMouseListener(event) {
markedCell = event.target;
markedCellRow = markedCell.parentNode.rowIndex;
markedCellCol = markedCell.cellIndex;
};
Benutzer ein A in markierten Zelle
$(document).keypress(function(e){
if (e.keyCode == 65) {
markedCell.appendChild(document.createTextNode(String.fromCharCode(e.keyCode)));
jumpToNextCell();
}
});
schreibt Nachdem die A wurde getippt, zur nächsten Zelle springen und sie fokussieren
function jumpToNextCell() {
table = document.getElementById('myTable');
markedCellCol++;
markedCell = table.rows[markedCellRow].cells[markedCellCol];
markedCell.appendChild(document.createTextNode('\u0020'));
markedCell.focus();
}
Das Problem mit der obigen Logik ist, dass sowohl die Quell- als auch die Zielzelle jetzt den Buchstaben A enthält.
Gibt es eine Möglichkeit zu verhindern, dass der Brief der Zielzelle hinzugefügt wird?
Vielen Dank im Voraus!
EDIT
Die Quelle Zelle ist diejenige, die ich zu markieren und die Zielzelle ist derjenige Ich springe.
Können Sie klären, was die ** Quell ** - und ** Zielzellen ** sind? –
Was ist Ihr ("* [MCVE] *") HTML und JavaScript? Andernfalls erhalten Sie viele Vermutungen und wahrscheinlich keine sinnvollen, verständlichen oder direkt relevanten Antworten. Auch, * ohne Ihren relevanten Code * ist diese Frage off-topic, da sowohl * Ihr Code * nicht enthält, es ist nicht ganz klar, was Sie fragen und es ist auch zu breit - da Sie erwarten, dass wir beide reproduzieren Ihre bestehenden Bemühungen und implementieren Sie eine Lösung für Ihr Problem. –
@RichardSilvertass Überprüfen Sie meine Antwort und akzeptieren Sie sie, wenn es Ihnen hilft. –