0

主にF12(Developertools)のファンクションキーを無効にする必要があるページがあります。ページに機密データを表示しているので、どのような場合でも、ユーザーにhtmlを表示させたり、非表示のフィールドを取得したりすることはできません。f1、f12などのファンクションキーを除くほとんどすべてのキーで機能するJavaScriptを確認しました。

とにかく、ブラウザでこれらのボタンを無効にできることはありますか?

document.onkeyup = KeyCheck;
function KeyCheck() {
    var KeyID = event.keyCode;
    alert(KeyID);
    switch (KeyID) {
        case 123:  //F12 KEY CODE         
            alert('hello');
            return false;
            break;            
    }

}

これは、キーをオーバーライドするために使用しているコードです。検索したところ、F12キーのキーコードは123で、同じコードを使用してオーバーライドしています。ただし、残念ながら「CASE」を押すことすらできず、F12、F1などのボタンを押してもメッセージボックスが表示されません。

これで私を助けてください。

4

6 に答える 6

7

送信した JavaScript データが改ざんされるのを防ぐ確実な方法はありません。返されたデータを検証するには、常にサーバー側のチェックを使用してください。

ユーザーは引き続きブラウザーのメニューを使用して開発コンソールを有効にすることができます。または、right-click->「要素の検査」を使用するか、ホットキーを使用してコンソールのさまざまなセクションを開き、コンソールの別のページにタブ移動するか、言及できなかったホットキーのいずれかを使用します。
または、単に JavaScript を無効にすることもできます。(または JavaScript を編集してブロックを無効にします)

ここで、イベント リスナーに a: を追加することで、ボタンの機能を無効にすることをもう少し徹底的に行うことができますが
event.preventDefault()、それでも信頼性は低くなります。

于 2012-12-03T07:27:21.640 に答える
0

いいえ、ページ上のJavaScriptを介して、ブラウザのソース/開発者ツールまたはその他のアプリケーションレベルの機能を表示することはできません。

Webページのソースを確認する方法はたくさんあります。すべての外部関係者がHTMLにアクセス/保存/表示することを制限するのは非常に難しい作業です。無効にする必要があるその他の項目の一部を次に示します。

  • FiddlerのようなHTTPデバッガー/プロキシまたはブラウザーに組み込まれているプロキシを含むプロキシ。
  • curlなどのコンソールツールからの直接GETリクエスト。
  • Googleのような検索エンジンを含むあらゆる種類のWebクローラー。

HTTPSを使用し、ユーザーが自分のマシンで実行できることを制限しようとするよりも、厳密に必要な場合を除いて、重要な情報を送信しないでください。

于 2012-12-03T07:32:43.570 に答える
0
document.onkeydown = KeyCheck;

出来た。

于 2012-12-03T07:24:26.583 に答える
0

これを試してください:

<script language="JavaScript">
    document.onkeypress = function (event) {
        event = (event || window.event);
        if (event.keyCode == 123) {
           //alert('No F-12');
            return false;
        }
    }
    document.onmousedown = function (event) {
        event = (event || window.event);
        if (event.keyCode == 123) {
            //alert('No F-keys');
            return false;
        }
    }
    document.onkeydown = function (event) {
        event = (event || window.event);
        if (event.keyCode == 123) {
            //alert('No F-keys');
            return false;
        }
    }
</script>
于 2012-12-04T13:49:28.923 に答える