1

私は、要素のクリック機能を実行するだけでなく、本当にサイトを離れたいかどうかを尋ねるポップアップを表示するJavascriptに取り組んでいます(タブを閉じます)。これで、コードは IE と Firefox で正常に動作します。しかし、Chrome は重要なことを行っていclick();ますが、退出するかどうかを尋ねるポップアップは表示されません。Chromeブラウザで有効にする必要がある機能なのか、それとも他の機能なのかわかりません。これが私が使用しているコードです。どんな助けでも大歓迎です。

var validNavigation = false;

function wireUpEvents() {

  var dont_confirm_leave = 0; 
var leave_message = document.getElementById("kioskform:broswerCloseSubmit");
      function goodbye(e) {
        if (!validNavigation) {
          if (dont_confirm_leave!==1) {
            if(!e) e = window.event;
            //for IE
            e.cancelBubble = true;
            e.returnValue = leave_message.click();
            //e.stopPropagation works in Firefox.
            if (e.stopPropagation) {
              e.stopPropagation();
              e.preventDefault();
            }
            //return works for Chrome and Safari
            return leave_message.click();
            alert("Removing information.");
            //add the code to delete the kiosk information here.
            // this is what is to be done.
          }
        }
      }
      window.onbeforeunload=goodbye;

      // Attach the event keypress to exclude the F5 refresh
      jQuery('document').bind('keypress', function(e) {
        if (e.keyCode == 116){
          validNavigation = true;
        }
      });

      // Attach the event click for all links in the page
      jQuery("a").bind("click", function() {
        validNavigation = true;
      });

      // Attach the event submit for all forms in the page
     jQuery("form").bind("submit", function() {
        validNavigation = true;
      });

      // Attach the event click for all inputs in the page
     jQuery("input[type=submit]").bind("click", function() {
        validNavigation = true;
      });

    }

    // Wire up the events as soon as the DOM tree is ready
    jQuery(document).ready(function() {
      wireUpEvents();
    });
4

1 に答える 1

2

ユーザーにメッセージを表示するには、onbeforeunload 関数で文字列を返す必要があります。Chrome および IE で jQuery を使用して body 要素に onbeforeunload を設定するも参照してください。

于 2012-09-21T18:25:35.207 に答える