js获取坐标问题

JavaScript028

js获取坐标问题,第1张

var ce=[]

function cea(event){

console.log(event.clientX+","+event.clientY)

var ve={

pointx:0,

pointy:0

}

ve.pointx=event.clientX

ve.pointy=event.clientY

ce.push(ve)//onmousedown

console.log(ce)

}

1、如图位置是一个html中的可编辑内容的div标签,在里边输入文字,会有一个光标。

2、通过getSelection可以获得一个Selection对象,如图。因为是一个光标,anchor和focus(选择的起点和终点)一样,偏移也一样。

3、如图,则进行文字选择,而且是跨行选择,以第一行为起点,第二行为终点,选择文字。

4、再次getSelection,可以看到anchorNode是起始节点,anchorOffset是起始偏移,focus是结束的。

5、如果从第二行倒着选到第一行,使用getSelection获取选择区域,可以看到anchorNode和focusNode和刚才相比,互换了。

6、使用一个node的textContent属性可以获得文字。结合focusOffset和anchorOffset,实际上可以获取光标/选中区域前后的文字。

7、将起始和结束位置设置为相同,而且都在结束节点的末尾。即变成闪烁光标。