La restriction entrer dans une pression de touche IFrame, ne fonctionne pas
-
19-09-2019 - |
Question
J'ai un IFRAME ma page et je utilise le designMode = « on » sur ce iframe pour un petit niveau édition de texte enrichi.
Je crains que je ne pas permettre à l'utilisateur de saisir de nouvelles lignes en elle - sens, je veux limiter entrer les clés
.Je l'ai fait en utilisant la posté ici pour écouter la keypress événements. Mais dans mon cas keypress, si je return false , rien ne se passe.
Comment puis-je limiterai entrer les clés dans une iframe avec DesignMode?
Code:
document.getElementById('editor').contentWindow.addEventListener('keypress',restrictEnterKey, true);
function restrictEnterKey(event) {
var key=(event.charCode)?event.charCode:((event.keyCode)?event.keyCode:((event.which)?event.which:0));
if (key == 13) {
//alert('me');
return false;
}
return true;
}
La solution
Vous devez appeler preventDefault
sur l'événement ou un ensemble returnValue
à false
pour IE. La fonction suivante fera le travail:
function preventDefault(evt) {
if (evt.preventDefault) {
evt.preventDefault();
} else if (typeof evt.returnValue !== "undefined") {
evt.returnValue = false;
}
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow