0

主に、アプリケーション内の残りのページとユーザー コントロールを制御するいくつかのマスター ページを持つ ASP.NET アプリケーションで作業しています。クライアントから、他の外部サイトに移動しようとした場合にユーザーに警告したいというリクエストがあります。たとえば、アプリケーションが www.abc.com で、abc.com/user、abc.com/payment などにあり、www.yahoo.com と入力して移動しようとすると、アプリケーションから別のサイトに移動していることをユーザーに警告する機能。Javascript (可能であれば) またはその他の代替 .NET の方法を使用してこれを実現する方法を探しています。最悪の場合、サード パーティのツールを検討することもできます (ただし、推奨されません)。

4

2 に答える 2

0

私は同様のことをしましたが、IEで動作します。解決策は証明されていませんが、私にとってはうまくいきました。解決策は、単に window.onbeforeunload イベントの JS 関数です。基本的に、ここでは次の 2 つのことを考慮する必要があります。

  1. ユーザーが、戻る/進むボタンを意味する Web サイト領域の外をクリックしたり、ブラウザーを閉じたりすると、window.event.clientY は負になります。
  2. ウェブサイトにポップアップ ウィンドウが表示されている場合、それはウェブサイトの一部であるため無視する必要があります。

{

 window.onbeforeunload = function (e) 
 {

  var currUrl = document.URL;
  e = e || window.event;
  var y = e.pageY || e.clientY;

 if (y < 0) 
 { 
   //call session end logic here
   //check URL in case you have popup windows in your website
   if (currUrl.indexOf('<popuppagename.aspx') >= 0 || ...)
     return;
   else
    //user is navigating away so show alert
  }
 }
于 2013-01-11T01:44:21.660 に答える
0

javascriptウィンドウオブジェクト イベントを処理する必要があります。Google DOM イベント。

于 2013-01-11T01:10:09.200 に答える