js怎样获取可编辑div中光标的位置

js怎样获取可编辑div中光标的位置,第1张

首先要实现输入内容不同颜色是可以实现的,比如使用一个可编辑iframe就可以了,textarea是不行的。

至于功能的实现,我觉得不需要获取结束位置

首先检测鼠标事件,如果有点击编辑区的某个位置,你就获取当前鼠标的落点,然后用innerHTML加入一对标签,<span class="color:#XXXXXX"></span>,所有输入内容都在这个span中间。效果就是输入的所有文字都变色。

不知道楼主明白没?

首先,我需要可以通过tagName获取所有的按钮,对你的按钮添加监听事件;

代码如下:

html:

<div id="butDIv">

<button id="1">121</button>

<button id="2">22</button>

<button id="3">222</button>

<button id="4">2222</button>

</div>

js代码:

var tempDiv=documentgetElementById('butDIv');

var teBut=tempDivgetElementsByTagName('button');

for(var i=0;i<teButlength;i++){

teBut[i]onclick=function(){

consolelog(thisid);

}

}

div里可以定光标吗?

下面两个方法可以获取鼠标在div 的位置坐标,希望你可以用得上

function getX(obj) {

var parObj = obj;

var left = objoffsetLeft;

while (parObj = parObjoffsetParent) {

left += parObjoffsetLeft;

}

return left;

}

function getY(obj) {

var parObj = obj;

var top = objoffsetTop;

while (parObj = parObjoffsetParent) {

top += parObjoffsetTop;

}

return top;

}

用<input type="text" />这样的单行文本框貌似是实现不了的,调了高度就会一直在中间,但你可以用下面的多行文本框来替换,用法和单行文本框一样:

<textarea style="width:200px;height:100px;"></textarea>

以上就是关于js怎样获取可编辑div中光标的位置全部的内容,包括:js怎样获取可编辑div中光标的位置、html中,在不知道当前点击按钮的id或name值得情况下,如何获取当前点击按钮的id值、在contenteditable的div中怎样获取光标距离页面顶端的偏移量和当前光标的位置等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9432107.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存