在输入JS

时间:2016-12-05 00:08:14

标签: javascript jquery

我有以下js:

jsfiddle

<script>
function hadd(event,which){ 
        var val = event.charCode;               
        if(val == 36){ //$ sign     
           var rh  = $(which);                           
           var cont = '<span class="dollar">Money</span>';                  
           rh.append(cont); //????      
        }           
    };  
</script>

<div class="example" contenteditable="true" tabindex="-1" onkeypress="hadd(event,this);">
   Please insert (here) now  
</div>

当输入“$”时,它会在“请立即插入(此处)”的末尾追加新的span

Please insert ($) now money.

在删除$符号时,如何在键入$的位置后追加范围? (见下文)

Please insert (money) now  

1 个答案:

答案 0 :(得分:1)

filtfilt()

JSfiddle。我通过用<script> $(function() { $('.example').keyup(function(event) { if (event.which == 52) { // "$" var rh = $(event.target); var newContent = rh.html().replace('$', 'Money'); rh.html( newContent ); } }); }); </script> <h5>Type "$" into the "here" section</h5> <div class="example" contenteditable="true" tabindex="-1"> Please insert (here) now </div> 的jQuery事件处理程序替换onkeypress属性,使jQuery-ish多了一点。我切换到example,因为在密钥上升之前,keyup的内容中没有显示$(例如<div>)。当我这样做时,keypress的代码从36变为52。

编辑:固定链接到jsfiddle