当监听 Ctrl + B 事件时,书签选项卡出现

When Listening to Ctrl + B event, Bookmark tab shows up

我正在尝试为 contenteditable div 实现 Ctrl+B ,这应该使文本加粗。

我遇到的唯一问题是,当按下 Ctrl+B 时,会出现浏览器的书签选项卡。

(fiddle)

$(document).ready(function() {
    $('#editable').designMode = 'on';
    $('#editable').on('keyup', function(e) {
        console.log(e.which);
        if(e.which == 66 && e.ctrlKey) {
            e.preventDefault();
            console.log('bold');
            document.execCommand ('bold', false, null);
            return false;
        }
    });
});
#editable {
    width:200px;
    height:100px;
    border:1px solid #999;
    border-radius: 3px;
    padding: 10px;
    box-sizing:border-box;
}

#editable:focus {
    outline: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<div contenteditable="true" id="editable"></div>

当我专注于可编辑的 div.

时,请帮我找到一种禁用该书签的方法

检查这个解决方案

jsFiddle

var g_state = 0;
$(document).ready(function() {
    $('body').keydown( function ( eve ) {
        if (eve.which === 17) {
            eve.preventDefault();
            g_state = 1;
        }
        return true;
    });
    $('body').keyup( function ( eve ){
        if (eve.which === 17) {
            eve.preventDefault();
            g_state = 0;
        }
        return true;
    });
    $('body').keypress( function ( eve ) {
        eve.preventDefault();
        if (eve.ctrlKey && (eve.which === 78)) {
            alert("(eve.ctrl + 'n')");   
        }
        else {
            if (g_state && (eve.which === 78)) {
                alert("(ctrl tracking by key up/down + 'n', resetting)");
                g_state = 0;
            }
            else {
                if (eve.shiftKey && (eve.which === 78)) {
                    alert("(eve.shift + 'n')");   
                }
                else {
                    alert("pass");   
                }
            }
        }
    });
});

嗨 Dangling Cruze,

这里没有任何火箭科学,我们在这里做的是防止事件冒泡。并停止事件到达网络浏览器。 如果事件是可取消的,preventDefault() 方法会取消该事件,这意味着属于该事件的默认操作不会发生。 单学期

例如,这在以下情况下很有用:

Clicking on a "Submit" button, prevent it from submitting a form
Clicking on a link, prevent the link from following the URL

At the document level we are binding all main three event 
    keydown
    keyup    
    keypress

and identifying key combination as well to prevent some key combination that is being used by browser as well. 

如果您需要任何进一步的帮助,请告诉我