首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

js、jQuery 获取文档、窗口、元素的各种

基于两年开发经验,总结了 javascript、jQuery 获取窗口、文档、元素的各种 javascript: 文档:是整个document所有的内容 浏览器当前窗口文档body的宽度: document.body.clientWidth...在当前触发鼠标事件的元素和它的祖先元素中找到最近的具有定位属性的元素,计算鼠标与其的偏移, 以找到元素的border的左上角的外交点作为相对点。...offsetY : offsetY和layerY的不同在于,前者的在计算偏移时,相对于元素的border左上角的内交点, 因此当鼠标位于元素的border上时,偏移是一个负值...另外offsetY并不在乎触发事件的元素是否有定位属性,它总是相对于触发事件的元素来计算偏移。...2.在元素具有上边框border-top的情况下, layerY比offsetY的多一个border-top的宽度

14K32
您找到你想要的搜索结果了吗?
是的
没有找到

js 动态修改_after_before伪元素content

今天做了一个有关js如何绑定动态修改伪类的content的内容,运用到的有( :before 和 :after 伪元素、CSS content 属性、data-* H5新属性、js)等技术。...:before伪元素和:after 伪元素; 4):before伪元素和:after 伪元素里各自添加content属性; 5)content 和 attr 配合使用: content: attr...(data-content-after);和content: attr(data-content-before); 这样content可以获取到box添加data-content-after属性里的:...=":after"]属性的value,有了value,这就可以进行动态修改 before伪元素和:after 伪元素里的content; 以此现在做一个笔记以便以后使用,Hope to help...background: #39c778; box-shadow: 1px 2px 3px -1px; display: block; } 三、js

11K20

js 实现元素拖拽

概述 js 实现拖拽,主要使用元素的 onmousedown、onmousemove、onmouseup 三个事件实现。...1、onmousedown:鼠标按下事件 2、onmousemove:鼠标移动事件 3、onmouseup:鼠标抬起事件 实现思路 我们当左键点击时,需要记录当前的鼠标点击位置相对于该元素左上角的x,y...坐标,这里我们使用diffX和diffY来表示 然后我们移动时需要不断计算当前元素距离浏览器左边和上边的距离; 同时给元素进行赋值; 当鼠标抬起时,取消鼠标移动事件和鼠标抬起事件。...id="drag"> window.onload = function () { //获取drag元素...clientX 和 clientY 默认是以元素左上角位置来计算的,这里需要向左向上同时减去鼠标点击的位置差,从而可以保证鼠标始终显示在拖拽元素时的位置

9.6K30

原生js添加元素

今天做页面使用的mui,因为使用mui情况下无法使用jquery,于是在ajax请求完毕添加元素的时候发现自己竟然对原生js添加元素的方法有点模糊了,真是越活越倒退了,赶紧整理一波。...首先最简单的innerHTML,这个不想多说,入门新手喜欢这么用,但他的缺点也很明显:不管你渲染部分还是全部,始终需要替换原先所有的子元素,也就是需要重复渲染,会增加浏览器压力。...接下来就是正题了,js推荐是这样进行元素添加: 1.创建游离元素节点:let div=document.createElement(“div”); 2.给创建元素添加属性:div.setAttribute...className”);注意setAttribute一次只能设置一条属性 3.创建文本节点:let textNode=document.createTextNode(“需要添加的文本”); 4.将文本节点添加到元素节点中...div.appendChild(textNode); 5.加元素节点插入文档:Parent.appendChild(div); over 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn

8.9K20

JS如何替换元素内容

,有的是动态的,特别是在一些网页交互的网页特效里,应用比较多,如何简单的替换元素的内容 01 原生JS实现 在原生js中主要通过DOM提供的属性去修改的,遵循js的一个使用规范,获取元素,绑定事件,操作...v-model="input" clearable> 替换元素...input-wrap { display:flex; justify-content: center; margin-bottom: 20px; } 分析 在原生js...当中,innerHTML是DOM元素对象一个非常重要的属性,可以获取元素整个节点的内容,包括标签元素,表示元素的所有内容,包括子元素,文本等 注意要与innerText区分,innerText只可以获取文本节点内容...,如果仅是修改DOM元素节点文本内容,使用innerText也是可以的 而在vue里面,并不是通过操作DOM去实现的,而是操作数据,通过操作数据实现的,与原生js的使用是有差异的

10.6K20

LayUI switch 开关监听 获取属性更改状态

背景 今天在设计页面时,想使用一下 LayUI 的 switch 控件,在需要更改状态的时候进行 ajax请求传输 需要获取其中的自定义属性,同时根据服务器返回数据进行状态的更改 通过参考文档及网友的经验...①. html 代码参考 着重注意 我设置的两个属性 lay-filter,switch_goods_id <input type="checkbox" class="switch_checked"...$vo['goods_id']}" lay-skin="switch" {$vo['status_checked']} lay-text="上架|下架"> ②. js...核心代码参考 以我的设计思路,需要获取当前需要更改状态的商品ID,然后通过ajax回调数据,判断是否执行 “确定” 按钮后的状态改变即可 layui.use(['form'], function ()...{ //开关是否开启,true或者false var checked = data.elem.checked; //获取所需属性

19.2K20

js如何引用同级元素

具体效果 示例效果 https://coder.itclan.cn/fontend/js/17-yinyong-tongji-elem/ 具体描述 在网页中,同级(兄弟)元素,指的是拥有相同的直接父级元素元素...以下是通过原生js实现,点击按钮时,获取按钮的 // 获取同级按钮元素的value function getLevelBtnVal(btn) { var p = btn.parentNode...btn && children[i].nodeType == btn.nodeType) { alert(children[i].value); // 弹出提示对方的value...,同级元素拥有相同的父级元素都是p,那么就可以得到除自身以外的的同级元素,如果还需要排除同一类别的话,那么可以使用节点的nodeType属性来加以区别 Vue版本实现 在Vue里面,就不用类似原生js的...实现是比较简单的,但是原生js的操作依旧还是要知道的

7.8K40
领券