2010-08-12 4 views
0

我使用GreyBox在同一個窗口中打開一個新的HTML頁面。它工作正常,但現在我希望它應該按下轉義關閉,或者如果用戶點擊頁面上的其他地方。我怎樣才能做到這一點?如何在按下轉義關閉時關閉GreyBox,或者如果用戶單擊頁面上的其他位置?

編輯:---

document.onkeypress = function (event) { 
    if (event == undefined) { event = window.event; } 
if (event.keyCode == 27) { 
    AJS.AEV(document,"keypress",GB_hide); 
    } 
} 

我用這個和它運行良好Mozilla的,但不是在Safari或Chrome ....任何想法,爲什麼是這樣,多數民衆贊成?

+0

的點擊是什麼'AJS.AEV'嗎? – 2010-08-15 13:38:21

+0

@marcel:你可以在http://orangoo.com/labs/GreyBox/ – developer 2010-08-18 05:55:03

+0

看到完整的JS。它不是GreyBox的一部分,而是JS庫的一部分:http://orangoo.com/AJS/文檔/ AJS_referece.html#ev_fn – 2010-08-18 09:47:43

回答

1

這個伎倆。

document.onkeypress = function noNumbers2(e){ 
    e = e || window.event; 
    var keynum = e.keyCode || e.which; 
    if(keynum == 27){ 
    AJS.AEV(document,"keypress",GB_hide); 
    } 
} 
0

也許這對你有幫助嗎?

window.document.onkeydown = function(evt) { 
    if (evt.keyCode == 27) { 
     if (alert.open) { 
      alert.close(); 
     } 
    } 
} 
+0

不要忘記正常化事件接口... – 2010-08-12 12:19:15

+0

PLZ請參閱我的編輯。 – developer 2010-08-12 12:22:35

0

而不是使用谷歌給頁面的URL要重定向

的OnClientClick =「top.window.location.href = 'HTTP://localhost/yourpagename.aspx'; parent.parent。 GB_hide();」

是關閉和重定向按鈕單擊jquery灰色框的代碼。

0

用jQuery你可以這樣做。我

在退出按鈕

$(document).keyup(function(e) { 

      if (e.keyCode == 27) { parent.GB_hide(); } // esc 
}); 

的點擊其工作的罰款外窗

$(document).on('click','#GB_overlay', function(e) { 


      parent.GB_hide(); 

    }); 
相關問題