删除键盘功能上的选定(突出显示的元素)

时间:2011-10-03 05:39:53

标签: javascript jquery selection

我有这两个功能:

var $mainEdit= $("#main-edit");

    function getSelText()
    {
        var txt = '';
         if (window.getSelection)
        {
            txt = window.getSelection();
                 }
        else if (document.getSelection)
        {
            txt = document.getSelection();
                }
        else if (document.selection)
        {
            txt = document.selection.createRange().text;
                }
        else return;
    return $("#clipboard").val(txt);
    }
    $mainEdit.mouseup(function(){
        $("#clipboard").val("");
          getSelText();  
        }).mousedown(function(){
        $("#clipboard").val("");
          getSelText();
        });

我想要做的是,在keyup事件中...将删除突出显示的元素。

所以,如果我有这个HTML:

<span>a</span>
<span>b</span>
<span>c</span>

并突出显示a和b,在keyup事件中,前两个跨度将被删除。

1 个答案:

答案 0 :(得分:0)

这是一个用于删除所选内容的跨浏览器功能:

function deleteSelected() {
    if (window.getSelection()) {
        window.getSelection().deleteFromDocument();
    } else if (document.selection) {
        document.selection.clear();
    }
}

将其挂钩到keyup事件:

$mainEdit.keyup(deleteSelected);