2

プログラム

私は現在、5つの選択肢から選択できるWebベースのキオスクシステム「すべてのクライアント側」を構築しました。これらのオプションのうち4つは、銀行商品のログインを含む、使用するベンダーへのリンクです。

私の目標

誰かがリンクをクリックして、自分が制御できないWebサイトにアクセスしたときのタイムアウトを作成したいと思います。このタイムアウトが発生すると、キオスクのホームページに戻ります。現在のウィンドウ、子ウィンドウ、iframeのどれであるかは気にしません。複数の人が使用するレベルが高いので、自分の製品からログアウトしない人から保護する必要があります。

私の現在の問題

子ウィンドウの制御を維持しようとしましたが、Microsoftは子ウィンドウからフォーカス機能を削除しました。私はこのクライアントサイドを維持しようとしていますが、サーバーサイドの機能を利用できますが、アクセスしているサイトが自分のコントロールの外部にあるというようなコントロールはありません。Iframeを使用してもかまいませんが、セキュリティで保護された外部Webサイトであるため、エラープロンプトとセキュリティリスクが発生します。

キオスクホスティングオプション

現在、このキオスクとファイルをSharePoint環境でホストしていますが、必要に応じて、独自のIISサーバー上にあるように変更できます。私はIEの大ファンではありませんが、これをビジネススタンダードとして使用しているため、このブラウザー内で使用できるようにする必要があります。

4

2 に答える 2

0

タイムアウトを設定して、IframeのSRCをリセットできます。問題はありません。

問題は、ユーザーが外部サイトを積極的に使用しているかどうかを知る方法がないことです。彼らが何かをしている最中にあなたのタイマーは場所をリセットするかもしれません。同一生成元ポリシーは、親ページがIframeで何が起こっているかを盗聴するのを防ぎます。

于 2012-11-21T19:13:31.993 に答える
0

外部サイトを iFrame にロードし、親でタイムアウトを定義するだけです。この例では、3 秒でリダイレクトされます。

<script type="text/javascript">

t=setTimeout(function(){
    window.location = "http://YourHomepage";
},3000);

</script>
</head>

<iframe src="http://YourVendor"></iframe>

明らかに、iFrame のサイズを変更し、リンクを修正し、タイムアウトをより適切なものに変更する必要があります。

于 2012-11-21T19:20:57.660 に答える