Est-il possible de désactiver Ctrl + F de trouver dans la page?
J'ai un site de puzzles et son une terrible façon de tricher. C'est correct si seulement partiellement, mais peut-il être fait?
Quelque chose que j'avais dans l'idée de remplacer les lettres par des images, mais rien de plus facile que ça?
source d'informationauteur Gabor Magyar
Vous devez vous connecter pour publier un commentaire.
Plutôt que de désactiver la fonction de recherche, vous pouvez faire en sorte que Trouver ne trouverez pas les mots! Une façon de le faire serait d'utiliser le CSS
content
déclaration d'injecter les mots. Trouver ne pourra pas les trouver:Vous pourrait facilement écrire un peu de code Javascript pour générer automatiquement toutes les règles CSS pour vous, trop.
Code
Vous pouvez désactiver le raccourci clavier dans la plupart des navigateurs (IE9, Firefox, Chrome, Opera), mais vous ne pouvez pas arrêter quelqu'un qui l'aide à Trouver en cliquant dessus dans le navigateur.
Voici quelques jQuery alimenté JavaScript qui n':
Prises de http://caniuse.com/où cette fonction régulièrement m'irrite. Sur ce site, il est utilisé pour faire un CTRL+F faire une recherche personnalisée sur la page, plutôt que de le désactiver complètement.
Je ne pense pas qu'il existe un moyen de désactiver la fonctionnalité tout à fait et il y devrait pas être un moyen de le désactiver.
Cependant vous pouvez vous assurer que le texte ne sera pas trouvé par Ctrl+F par écrit dans loin que le navigateur ne prend pas en compte d'continue de texte.
À l'aide d'images est une approche relativement simple.
Sinon, vous pouvez générer aléatoirement des lettres et ré-arranger avec un peu de CSS magique (mon CSS-fu est trop faible pour donner un exemple, malheureusement). Par exemple, si vous voulez "cacher" le mot "bonjour", puis écrire "lehol" avec chaque lettre dans une autre
<div>
et appliquer quelques styles CSS de sorte que visuellement les lettres sont dans le bon ordre.Remarque que cela (et probablement toutes les autres solutions de travail ainsi) aussi pause copier-coller du texte.
Voici un plugin jQuery qu'est-ce que vous cherchez.
Je présume que l'utilisation de keydown pourraient permettre cela, cependant, comme une question de principe, en changeant la façon dont le navigateur se comporte est une mauvaise idée. Bien qu'il est plus d'une douleur à faire pour vous, il y a la police des techniques de remplacement qui devrait rendre plus facile.
Si vous trouvez un moyen de le faire, il y a toujours un risque que quelqu'un aura autour d'elle. Il est de loin préférable d'écrire la page de travail quel que pirater le navigateur.
Pas. Remplacement avec les images est la manière la plus rapide et la plus sûre façon. (Sauf si vous êtes prêt à passer à Flash/Java Applet/etc.)
vous pouvez le faire avec javascript - ce n'est que pseudo-code (écrit en jQuery) comme je ne suis pas sûr de la façon d'écouter à la fois un ctrl ET f, mais vous voyez l'idée:
Retourner false comme cela va arrêter le navigateur rien faire lorsque les touches sont pressées, autant que je sache. vous pouvez également utiliser
e.preventDefault();
pour tenter d'empêcher tout ce qui se passe sireturn false;
n'est pas suffisant.Espère que cette aide
Pourquoi ne pas utiliser le Shadow DOM ? Cela permettra à votre contenu d'être inaccessible par les moteurs de recherche ou les lecteurs d'écran. Et a l'avantage supplémentaire d'avoir exactement le même comportement que pour l'utilisateur.
Prendre un coup d'oeil ici pour plus d'info: Introduction à l'Ombre DOM