首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在单击后创建输入时,是否可以开始编辑输入的确切位置?

在单击后创建输入时,是否可以开始编辑输入的确切位置?
EN

Stack Overflow用户
提问于 2013-10-31 23:12:29
回答 2查看 102关注 0票数 0

假设有一种情况,我有一个文本,一旦用户单击这个文本,它就被转换为一个具有相同文本的输入,用户单击该输入作为一个值。

我想知道是否有可能使光标出现在第一次点击发生的地方?

http://jsfiddle.net/nmaqa/

在本例中,用户首先单击以激活编辑,然后再单击要显示光标的位置。

代码语言:javascript
复制
$(document).on("click", ".click li.editable", function(){
        //
        var item = $(this);
        item.removeClass("editable");
        var word = item.html();
        item.empty();
        item.append('<input class="quick-edit" type="text" name="quick_edit" value="'+ word +'" />');
        $(".quick-edit").focus();
        //
    });
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-01 10:40:28

我想知道是否有可能使光标出现在第一次点击发生的地方?

我们有一个名为contentEditable的html元素的属性,获取一个看这个样本,并看到您想要实现的是默认行为。

代码语言:javascript
复制
<div class="prompt" contentEditable=true>
    write the html code  <span style="background-color:blue;">here</span>
</div> 

需要注意的是,不需要实现替换的逻辑就可以对文本元素.进行编辑。

票数 0
EN

Stack Overflow用户

发布于 2013-10-31 23:35:40

是的,可以是html。

代码语言:javascript
复制
<ul class="click">
<li contenteditable = true class="editable">Text</li>
<li class="editable" contenteditable = true>Text</li>

和javascript

代码语言:javascript
复制
$(document).on("click", ".click li.editable", function(){
    //
    var item = $(this);
    item.removeClass("editable");
    var word = item.html();
    item.empty();
    item.append('<input class="quick-edit" type="text" name="quick_edit" value="'+ word +'" />');
    $(".quick-edit").focus();
    //
});
   $('.editable:first').focus()

请更新代码或检查ik篡改http://jsfiddle.net/nmaqa/1/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19718209

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档