点击button选中,按Backspace键删除怎么实现

ea
  • 380

这是我的html代码,加了contenteditable也不行

<div class="ovx-h" contenteditable="true" name="content" id="content">
<input type="button" name="topic" value="#一个话题#" data-isid="16">
</div>

别人的代码是可以的,也是用的input,但是不懂点击事件那里他是怎么处理的

<input name="topic" type="button" class="C3fcab8" title="#{76}#" value="#一个话题#" contenteditable="">

图片描述

回复
阅读 2.9k
4 个回答
✓ 已被采纳

其实我有个思路,#content点击事件里面加个判断,如果点击的是按钮,加个样式,背景颜色变蓝,看上去像是选中,然后监测按键,如果此时按删除键,把按钮移除,如果点的是其他地方,把样式移除(相当于取消选中)。
但还是实现不了别人那种效果,是真正的选中和删除。

你这是点击了选中按钮,然后把按钮删了?

html:

<div class="ovx-h" contenteditable="true" name="content" id="content">
   <input type="button" name="topic" id="wp" value="#一个话题#" data-isid="16" style="border:none;background:white">
</div>

js:

   $("#wp").click(function(e){selectText('content')})
     function selectText(element) {
        var text = document.getElementById(element);
        var selection = window.getSelection();
        var range = document.createRange();
        range.selectNodeContents(text);
        selection.removeAllRanges();
        selection.addRange(range);
    }

是要这样子么?

没大看懂啥意思。。。
是不是这样,点击button的时候,把这个button获取到,然后又加了个keydown的监听?监听到keycode==backspace的时候,把上面获取到的button移除?

他的那个代码是所见即所得编辑器吧?具体的忘记了,但是你可以参考下js高级程序设计里面讲的

宣传栏