控制焦点位置

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

    <div id="e" contenteditable="true">
        <div>12123
            <span>23</span>
        </div>
        <ul>
            <li>123123</li>
            <li>123<i>wqe</i></li>
        </ul>
    </div>
</body>
<script>
    var e = document.getElementById('e')
    let selection = window.getSelection()
    let lastRange
    e.addEventListener('click', e => {
        let range = selection.getRangeAt(0);
        lastRange = range
        console.log(range)
    })
    e.addEventListener('blur', e => {
        setTimeout(() => {
            selection.removeAllRanges();
            let range = document.createRange();
            range.setStart(lastRange.startContainer, lastRange.startOffset);
            range.setEnd(lastRange.endContainer, lastRange.endOffset);
            selection.addRange(range);
        }, 1000);
    })
</script>

</html>
全部评论

相关推荐

喜欢走神的孤勇者练习时长两年半:哈哈,还好是被挂,要是被违约,有你好受的
点赞 评论 收藏
分享
不入算法余生悔:大二开始实习,本科三年经验,再考个研,到研二正好是五年经验
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务