码迷,mamicode.com
首页 > 编程语言 > 详细

JavaScript中HTML DOM focus()与onblur() setSelectionRange()用法

时间:2018-11-27 13:47:08      阅读:217      评论:0      收藏:0      [点我收藏+]

标签:inpu   selection   click   鼠标   总结   document   输入框   百度搜   innerhtml   

今天在写一个todolist待办事项项目,需要单击编辑待办事项的内容,百度搜了一下这几个方法的用法,总结一下

focus()方法:获得键盘焦点,单击之后就调用绑定的js方法,在span标签里面加一个输入框,然后进行编辑

onblur()方法:失去键盘焦点,编辑结束之后,随意鼠标单击任意地方更新编辑的内容

setSelectionRange():js控制输入框光标位置

这三个方法组合起来可以用做鼠标点击事件,然后进行内容编辑,内容编辑时使用setSelectionRange()选中所有文本,就可以不需要一个一个删除了

<body>
    <span id="s1" onclick="alter()">这是一段文本</span>
    <script>
        function alter() {
            var span = document.getElementById(‘s1‘);
            var conent = span.innerHTML;
            span.innerHTML = "<input id=‘input‘ value=‘"+conent+"‘/>";
            var input = document.getElementById(‘input‘);
            input.setSelectionRange(0,input.value.length);
            input.focus();//获得键盘焦点
            input.onblur = function () {//失去键盘焦点
                span.innerHTML = input.value;//更改span的文本内容
            }
        }
    </script>
</body>

JavaScript中HTML DOM focus()与onblur() setSelectionRange()用法

标签:inpu   selection   click   鼠标   总结   document   输入框   百度搜   innerhtml   

原文地址:https://www.cnblogs.com/wualin/p/10025764.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!