0
我有一個全屏Google地圖,然後我有一個彈出窗口。我想要的是彈出消失,當我點擊任何東西,但彈出或如果我按esc。取消綁定jquery事件只能工作一次
下面的代碼只能運行一次。我可以打開彈出窗口並關閉它,但不會再打開。
var hideBlogContent = function() {
$(document).on('click', function (e) {
if ($(e.target).closest($("#blogpost")).length === 0) {
$("#blogpost").hide();
$(document).unbind();
$(document).off();
}
});
$(document).on('keydown', function (e) {
if (e.keyCode === 27) { // ESC
$("#blogpost").hide();
$(document).unbind();
$(document).off();
}
});
我該如何讓它每次都能工作?
爲什麼你要解綁事件呢? –
,這樣我就可以再次打開彈出窗口。否則會在打開它時隱藏帖子? –
您可能想要將函數包裝在相應的包裝函數中,並在需要時調用它,如果您仍想每次解除綁定但確保只解除當前事件(如$(document).unbind('click'); – DinoMyte