js怎样 获得当前选中位置元素的 html格式

js怎样 获得当前选中位置元素的 html格式,第1张

有原生DOM获取以及用js库比如jquery

原生DOM的话首先获取标签对象,id或者name或其他

例:

1

<p id="targetp" >2333333</p>

<script>

var element = documentgetElementById("targetp");

var tagname = elementtagName;

alert(tagname);

</script>

jQuery获取

$("#content-header")get(0)tagName

如果已经获取到对象可以直接获取标记名

<p onclick="alert('您单击的是:'+thistagName);">中华人民共和国</p>

分析该过程,可拆分成两个步骤:

该布局基于 element-ui,一个父容器 box,里面一个 mask div,一个 el-checkbox-group 块。其中父容器设置 position: relative; 子 mask 容器设置 position: absolute;并且其宽、高、偏移值根据鼠标当前位置动态计算

该部分逻辑实际上可拆分为 4 个步骤:

1 给 box 绑定 mousedown 事件

2 mousemove 事件,比较简单,只是更新 end_x,end_y 坐标

3 mouseup 事件,移除 mousemove、mouseup 事件,并调用判断方法

4 处理框选逻辑

难点是如何判断元素是否被框选住

问题可转化为 框选矩形是否与 checkbox 矩形 相交或者包含在内,即 两矩形是否相交或者存在包含关系

假定矩形 A1 左上角坐标为 (x1,y1);矩形宽度为 width1,高度为 height1;

假定矩形 A2 左上角坐标为 (x2,y2);矩形宽度为 width2,高度为 height2;

画图分析,只看水平方向:

由图可以得出,x 方向上:

令 maxX = Mathmax(x1 + width1, x2 + width2)

令 minX = Mathmax(x1, x2)

若相交或包含则必满足: maxX - minX <= width1 + width2;

同理可以容易得到 y 轴相交的判断

使用 ElementgetBoundingClientRect()获取 dom 元素位置信息

该部分逻辑如下,比较简单

难点已经攻破,遍历 checkbox 集合,每个 checkbox 都执行上面的矩形相交判断,并进行相应的勾选处理,此处不再多累述

源码

END

a页面和b页面必须是有关系的,不然是没办法的。

比如首先a页面,在a页面上的链接打开了b页面。可以

var obj = windowopenerdocumentgetElementById('objid');//objid是b页面上的控件id

以上就是关于js怎样 获得当前选中位置元素的 html格式全部的内容,包括:js怎样 获得当前选中位置元素的 html格式、原生JS 实现框选功能(Vue)、两个页面引用同一个js文件,怎么样用js文件取两个页面的DOM元素等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: https://outofmemory.cn/web/10061509.html

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

发表评论

登录后才能评论

评论列表(0条)

保存