简体   繁体   English

如何防止退格键关闭弹出窗口?

[英]How to prevent the closing of popup on backspace click?

I made a simple popup screen. 我做了一个简单的弹出屏幕。 On button click I display the popup screen. 在按钮上单击我会显示弹出屏幕。 On backspace it automatically closes. 在退格键上它自动关闭。

I already use data-dismissible="false" . 我已经使用了data-dismissible =“ false” Although on backspace it still closes the popup. 尽管在退格键上,它仍然关闭弹出窗口。 Is it possible to disable the backspace button? 是否可以禁用退格按钮?

Here is my fiddle: http://jsfiddle.net/ezanker/5anNC/6/ 这是我的小提琴: http : //jsfiddle.net/ezanker/5anNC/6/

Please click the button to display the popup screen. 请单击按钮以显示弹出屏幕。 On backsapce the popup dismisses. 在后退窗口中弹出。

function infoAlert(text) {
    var popupDialogId = 'popupDialog';
    $('<div class="aa" data-role="popup" id="' + popupDialogId + '" data-confirmed="no" data-transition="pop" data-overlay-theme="b" data-theme="b" data-dismissible="false" style="max-width:500px;"> \
                        <div data-role="header" data-theme="a">\
<a href="#" class="common-button ui-btn ui-corner-all ui-shadow ui-btn-inline ui-btn-b optionConfirm" data-rel="back">OK</a>\
                            <h1>Info</h1>\
                        </div>\
                        <div role="main" class="ui-content">\
                            <h3 class="ui-title">' + text + '</h3>\
                            <a href="#" class="common-button ui-btn ui-corner-all ui-shadow ui-btn-inline ui-btn-b optionConfirm" data-rel="back">OK</a>\
                        </div>\
                    </div>')
        .appendTo($.mobile.pageContainer);
    var popupDialogObj = $('#' + popupDialogId);
    popupDialogObj.trigger('create');
    popupDialogObj.popup();
    popupDialogObj.popup('open');
    popupDialogObj.find(".optionConfirm").first().on('click', function () {

        $(popupDialogObj).remove();
        return false;
       // popupDialogObj.attr('data-confirmed', 'yes');
    });
}

Could try something like: 可以尝试类似:

$('body').keydown(function(e) {
    if($('#popupDialog').is(':visible')) {
        if(e.keyCode == 8) { // 8 is backspace
            e.preventDefault();
        }
    }

});

jSFiddle jSFiddle

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM