带有占位符的可编辑div中的光标不会出现在Google Chrome浏览器的合适位置

皮埃尔·亚历山大·布沙德

我有一个按钮,editable div用占位符清除了一个简单的符号。

如果在按下按钮之前在可编辑的div中输入两行(通过按Enter换行),则会出现占位符,但光标将位于Google Chrome中可编辑的div旁边。

在此处输入图片说明

我在Safari和Firefox上进行了测试,没有问题,光标位于可编辑的div中。

此代码段有什么问题?Jsfiddle链接

HTML:

<div class="textarea" contenteditable="true" placeholder="demo"></div>
<button type="button">press me</button>

CSS:

[contenteditable=true]:empty:before{
    content: attr(placeholder);
    display: block;
}

.textarea{
    border-style: solid;
    width: 100px;
    outline-width: 0;
    cursor: text
}

Javascript:

$('button').click(function(){
    $('.textarea').empty();
    $('.textarea').focus();
});
周杰夫

好的,这似乎为我解决了该问题,尽管此修复有点怪异。如果设置text为a,blank space它将解决此问题。

我希望其他人可以减少黑客的攻击。

$('button').click(function(e){
    $('.textarea').text(' ');
    $('.textarea').focus();
    console.log($('.textarea')[0].innerText.length);
});

这是一个小提琴展示

编辑

如果要保留占位符,则创建一个范围并设置选择即可解决该问题。

以下是相关代码:

$('button').click(function(e){
    $('.textarea').text('');
    var range = document.createRange();
    var sel = window.getSelection();
    range.setStart($('.textarea')[0], 0);
    range.collapse(true);
    sel.removeAllRanges();
    sel.addRange(range);
});

这是一个小提琴展示

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

带有占位符的可编辑div中的光标不会出现在Google Chrome中的合适位置

来自分类Dev

Chrome浏览器出现硒浏览器错误

来自分类Dev

HTTP 302重定向返回的位置不会出现在浏览器历史记录中吗?

来自分类Dev

位置:已修复无法在Google Chrome浏览器中工作

来自分类Dev

Google Chrome浏览器代理设置?

来自分类Dev

Google Chrome浏览器运行缓慢

来自分类Dev

Google Chrome浏览器代理设置?

来自分类Dev

下载Google Chrome浏览器(armhf?)

来自分类Dev

Google Chrome浏览器的字体问题

来自分类Dev

Google Chrome浏览器首页37

来自分类Dev

Google Chrome浏览器不断崩溃

来自分类Dev

Google Chrome浏览器崩溃

来自分类Dev

Google Chrome浏览器行为异常

来自分类Dev

下载Google Chrome浏览器(armhf?)

来自分类Dev

Chrome浏览器中的for-of循环

来自分类Dev

Chrome中的跨浏览器实例

来自分类Dev

在webdriver中启动Chrome浏览器

来自分类Dev

Chrome浏览器中的音量低

来自分类Dev

在Chrome浏览器中显示XML

来自分类Dev

在Webdriver中启动Chrome浏览器

来自分类Dev

Favicon不会出现在任何移动或桌面浏览器上

来自分类Dev

小小的黑色方形框出现在Google Chrome浏览器上

来自分类Dev

小小的黑色方形框出现在Google Chrome浏览器上

来自分类Dev

Chrome和Safari浏览器上的占位符毛刺非常适合mozilla浏览器

来自分类Dev

带有'x'的信封/矩形框会出现在Chrome的各种网页中

来自分类Dev

Google Chrome浏览器扩展程序,可重新启动Google Chrome浏览器

来自分类Dev

带有:before伪元素的可编辑div中的光标位置

来自分类Dev

刷新Google Chrome浏览器中的所有标签

来自分类Dev

在Google Chrome浏览器中进行实时编辑

Related 相关文章

热门标签

归档