首页
学习
活动
专区
圈层
工具
发布

【react-dnd使用总结一】拖放完成后获取放置元素在drop容器中的相对位置

工具函数-根据元素的起始位置和最终位置,计算相对于某元素的位置 export interface IPosition { left: number; top: number; } /** *...根据元素的其实位置和最终位置,计算相对于某元素的位置 * @param initialPosition 拖动元素相对于屏幕左上角的起始位置(偏移量) * @param finalPosition 拖放完成后当前节点相对于屏幕左上角的位置...: any, finalPosition: any, containerEle: HTMLDivElement, ): IPosition => { // 获取容器的位置信息 rect 信息包含...: newYposition, }; }; 在drop回调函数中 drop(target: any, monitor: DropTargetMonitor) { console.log(target...(偏移量) monitor.getSourceClientOffset(), // 拖放完成后当前节点相对于屏幕左上角的位置 document.querySelector('#container

5.9K10

杨老师课堂之Jquery的筛选,事件,效果,Ajax,javascript跨域)

unbind(type,[data|fn]]),bind()的反向操作,从每一个匹配的元素中删除绑定的事件。...事件对象: 由于IE-DOM和标准DOM实现事件对象的方法各不相同,导致在不同 浏览器中获取事件对象变得比较困难.针对这个问题,jquery进行了必要的扩 展和封装,从而使得在任何浏览器中能很好的轻松的访问获取事件对象以及事...可以用同样的方法解决 元素上的问题 阻止默认行为 网页中的元素都有自己默认的行为,例如:单击超链接后悔跳转,单击”提交”按钮会表单会提交,有时需要阻止元素的默认行为 在jquery中,提供了preventDefault...在标准DOM中,mouseover和mouseout所发生的元素可以通过event.target()方法 来访问.相关元素是通过event.relateTarget()方法来访问的.event.relatedTarget...); return false;//阻止链接跳转 }); (7)event.which()方法 该方法的作用是在鼠标单击事件中获取到鼠标左中右键,在键盘事件中获取键盘的按键.

10.2K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(二):CSS伪类:UI伪类、结构化伪类;通过伪类获得子元素的第n个元素;创建一个伪元素展示在页面中;获得最后一个元素;处理聚焦元素的样式

    Selector:active 匹配Selector选择器且处于被用户激活(在鼠标点击与释放之间的状态)的状态的元素。 Selector:focus 匹配Selector选择器且已得到焦点的元素。...none;/*取消a标签的下划线*/ } /*用户在链接上按下鼠标时(活动状态),链接颜色为红色*/ a:active { color: red; } /*当input标签获取焦点时,添加下划线*...在HTML文档中,根元素永远是元素 Selector:first-child 表示一组同胞元素中的第一个元素。 Selector:last-child 表示一组同胞元素中的最后一个元素。...伪元素就是说在你的文档中若有实无的元素 (解释说明:在HTML代码中没有,我们可以通过css的样式设置伪元素,让它显示给我们看到) 伪元素: ::first-letter 伪元素 第一个字母 ::...) 匹配Selector1,但不匹配Selector2,相当于从Selector1中减去Selector2 Selector:target (target 目标) 如果用户点击一个指向页面中其他元素的链接

    17910

    JQuery最全常用方法指南

    ,从每一个匹配的元素中删除绑定的事件。...map(callback) 将jQuery对象中的一组元素利用callback方法转换其值,然后添加到一个jQuery数组中。 not(expr) 从匹配的元素集合中删除与指定的表达式匹配的元素。...,如果没有找到,则返回 - 1 jQuery.unique(array) 删除数组中的所有重复元素,返回整理后的数组 1、关于页面元素的引用 通过jquery的$()引用元素包括通过id、class、....innerHTML; 3、如何获取jQuery集合的某一项 对于获取的元素集合,获取其中的某一项(通过索引指定)可以使用eq或get(n)方法或者索引号获取,要注意,eq返回的是jquery对象,而...,我们无需在html元素上直接写事件,而可以直接为通过jquery获取的对象添加事件。

    13.2K31

    AJAX培训笔记_js基础笔记

    端编码2次 username = encodeURI(username); username = encodeURI(username); 字节码编码的原理: 在文本框中输入“中” 11:jQuery部分方法练习...ul节点任何位置都会触发click事件 完善点2:为二级菜单添加连接,单击后将相关页面在类似与iframe中显示 jQuery(function() //$(document).ready(function...td上的click事件 完善点1:修改后单击回车键,修改过的值写入td,input消失, 重新单击时,又可以进入编辑状态 完善点2:文本框内容高亮显示 jQuery(function() { //绑定事件方法...val() val(val) //匹配第一个元素 jquery中的相当于js中的onload方法 //jQuery(function() $(document).ready(function() /...$(html):根据提供的HTML字符串,创建DOM 元素,如:$(“Hello") $(elements):将一个或多个DOM元素转化为jQuery对象,如:$(document.body

    7.3K10

    Web阶段:第五章:JQuery库

    3.JQuery流行程度 jQuery现在已经成为最流行的javascript库,在世界前10000个访问最多的网站中,有超过55%在使用jQuery。...()查询出来的标签对象是Dom对象 4.通过createElement() 方法创建的对象,是Dom对象 JQuery对象 5.通过JQuery提供的API创建的对象,是JQuery对象。...例如:$("我是span标签");是jquery对象 6.通过JQuery包装的Dom对象,也是JQuery对象 7.通过JQuery提供的API查询到的对象,是JQuery对象...jquery对象( divObj ); //jquery对象jquery对象转为dom对象:var dom = jqueryObj[下标];1、先有jquery对象2、通过下标取出需要的dom对象 jquery...:在页面所有资源加载完后执行,如果有多个定义则只执行最后一个2、(function(){}):在Dom节点创建完成后执行,如果有多个定义则依次执行可以看出(function(){})在window.onload

    28.8K20

    Jquery基础之DOM操作

    把新建节点添加到DOM树中JQuery代码如下: ("ul").append(       添加后页面中只能看到元素默认的"·",由于没有为节点添加文本所以只显示默认符号,下面创建文本节点。...DOM对象包装成JQuery对象,把新建的文本节点添加到DOM树中JQuery代码如下: ("ul").append(       添加后页面中能看到"·苹果",右键查看页面源码发现新加的文本节点没有...四、删--删除DOM节点操作       如果想要删除文档中的某个元素JQuery提供了两种删除节点的方法:remove()和empty();     1、remove()方法       remove...()方法删除所有匹配的元素,传入的参数用于筛选元素,该方法能删除元素中的所有子节点,当匹配的节点及后代被删除后,该方法返回值是指向被删除节点的引用,因此可以使用该引用,再使用这些被删除的元素。...offset()方法用于获取元素相对当前窗体的偏移量,其返回对象包括两个属性:top和left。

    66610

    jquery对象和dom对象的相互转换

    1、关于页面元素的引用 通过jquery的$()引用元素包括通过id、class、元素名以及元素的层级关系及dom或者xpath条件等方法,且返回的对象为jquery对 象(集合对象),不能直接调用dom....innerHTML; 3、如何获取jQuery集合的某一项 对于获取的元素集合,获取其中的某一项(通过索引指定)可以使用eq或get(n)方法或者索引号获取,要注意,eq返回的是jquery对象,而...,我们无需在html元素上直接写事件,而可以直接为通过jquery获取的对象添加事件。...从每一个匹配的元素中(添加)删除绑定的事件。...把一个数组中的项目(处理转换后) 保存到到另一个新数组中,并返回生成的新数组。

    4.5K40

    waypoint_使用jQuery Waypoint创建粘性导航标题

    我们会做什么 在本教程中,我们将使用HTML5的新元素之一nav标签作为水平链接列表的容器。 我将简要说明如何使用一些CSS使它看起来更漂亮。...在处理程序函数的主体中,我们使用的是jQuery的.toggleClass()方法的.toggleClass()变体,该变体提供了一种有用的速记方式:在此语法中,第二个参数确定是否将类添加到目标元素或从中删除...所有这些都是标准的jQuery票价:在nav添加或删除sticky类后,我们便会使用.css()覆盖元素的垂直位置,然后使用.animate()其设置为应有的水平。...但是,这样做有一点副作用-由于代码在固定后有效地取代了导航元素的垂直位置,因此您top:15px从CSS中删除top:15px声明。...如果您不仅仅想添加和删除类,还可以考虑使用LavaLamp这样的插件。 在某些时候,您可能已经注意到,单击导航栏中的链接会将部分的顶部置于浏览器视口的顶部。

    5.4K30

    Web前端知识(四)

    4.1.1.3.jQuery特点 1.轻量级 2.强大的选择器 3.出色的Dom封装 4.可靠的事件处理 5.浏览器兼容性强 6.链式操作方式 7.隐式迭代 4.1.2.jQuery代码风格 l在jQuery...鼠标单击事件 click 鼠标进入事件 mouseover 鼠标离开事件 mouseout 鼠标移动事件 mousemove 4.1.6. jQuery操作CSS l通过jQuery可以很方便的来操作...; offset().top; position()获取某个元素相对于父元素的偏移位置 position().left position().top 4.1.7.2.操作HTML l使用jQuery...标签(不包括孙子) $(“div+p”) 选取紧跟div后的兄弟元素中第一个p $(“div~p”) 选取紧跟后的兄弟元素中的所有p 间接后代: 直接后代: 紧跟第一个兄弟: 选取紧跟后面所有兄弟元素...中动画(***) 4.1.9.1.jq中动画简介 通过jQuery动画方法,能够很轻松地为网页添加非常精彩的视觉效果,给用户一种全新体验. 4.1.9.2.jq中动画分类 1.显示、隐藏 2.滑动

    8.4K30

    jQuery

    来代替,相当于原生js中的window 1.1.3 jQuery 对象和 DOM 对象 用原生 JS 获取来的对象是 DOM 对象 jQuery 方法获取的元素是 jQuery 对象。...$(‘li:last’) 获取最后一个li元素 :eq(index) $(“li:eq(2)”) 获取到的li元素中,选择索引号为2的元素,索引号index从0开始。...属性名和属性值用冒号隔开, 属性可以不用加引号 $(this).css({ "color":"white","font-size":"20px"}); 一般来说通过在style中编写样式,通过添加类的方式添加样式...删除 删除元素集合中的子节点 $('ul').empty();//相当于清空ul里的内容 通过html来清空 $('ul').html(); 4.4 尺寸,位置操作 4.4.1 jQuery尺寸操作 语法...,与父级没有关系 传入的参数是一个对象 //获取偏移量 $('div').offset() //更改位置 $('div').offset({ top: 200, left: 100

    10.3K10

    Jquery 使用技巧总结

    (0).innerHTML; 3、如何获取jQuery集合的某一项 对于获取的元素集合,获取其中的某一项(通过索引指定)可以使用eq或get(n)方法或者索引号获取,要注意,eq返回的是jquery...对于jquery对象只能使用jquery的方法,而dom对象只能使用dom的方法,如要获取第三个元素的内容。...//如果存在(不存在)就删除(添加)名称为select的class 9、完善的事件处理功能 Jquery已经为我们提供了各种事件处理方法,我们无需在html元素上直接写事件,而可以直接为通过jquery...: 事件的绑定与反绑定 从每一个匹配的元素中(添加)删除绑定的事件。...把一个数组中的项目(处理转换后)保存到到另一个新数组中,并返回生成的新数组。

    4.1K20

    【前端词典】4 (+1)种滚动吸顶实现方式的比较

    二、使用 JQuery 的 offset().top 实现 我们知道 JQuery 中封装了操作 DOM 和读取 DOM 计算属性的 API,基于 offset().top 这个 API 和 scrollTop...这样实现固然可以,不过由于 JQuery 慢慢的退出历史的舞台,我们在代码中尽量不使用 JQuery 的 API。我们可以基于 offset().top 的源码自己处理原生 offsetTop。...(保存变量); 在使用的时候可能出现 DOM 没有初始化,就读取了该属性,这个时候会返回 0;对于这个问题我们需要等到 DOM 元素初始化完成后再执行。...不急,你是否还记得滚动吸顶使用了 offsetTop 或者 getBoundingClientRect().top 来获取响应的偏移量呢? 既然有读取元素的属性就自然会导致页面 reflow。...因此我们优化的方向就是从减少读取元素属性次数下手,查看代码发现一触发屏幕滚动事件就会调用相关方法读取元素的偏移量。

    2.6K30

    WEB入门之十六 操作DOM节点

    7.1.3 删除节点 删除节点指的是把现有的元素从网页中删除,这时可以通过jQuery提供好的一些函数来实现,详见表7-1-2所示。...表7-1-2 节点删除函数 函数 说明 remove( ) A.remove( ),把A从页面中删除掉 empty( ) A.empty( ),把A中的所有子元素删除掉 这两个函数都比较简单,下面通过一些示例来演示这些函数的用法...7.2 节点筛选 前面我们学习了过滤选择器,它是在获取到元素后通过索引进一步进行了过滤或筛选。...表7-1-4 节点过滤函数 节点过滤函数 说明 eq( ) 按索引获取匹配元素中的第n个元素,索引从0开始 first( ) 获取匹配元素中的第1个元素 last( ) 获取匹配元素中的最后1个元素...添加节点时,需要先单击选中某个一级或二级节点,然后在文本框中填写新添加的节点名,单击【添加】按钮把节点名作为新节点添加到选中的节点下面。删除节点只实现删除三级节点即可。

    1.4K10

    WEB入门之十六 操作DOM节点

    7.1.2 插入节点 在实际开发中,有些节点需要动态的插入到页面中,这时可以通过jQuery提供好的一些函数来实现,详见表7-1-1所示。...7.1.3 删除节点 删除节点指的是把现有的元素从网页中删除,这时可以通过jQuery提供好的一些函数来实现,详见表7-1-2所示。...7.2 节点筛选 前面我们学习了过滤选择器,它是在获取到元素后通过索引进一步进行了过滤或筛选。...表7-1-4 节点过滤函数 ​节点过滤函数​ ​说明​ eq( ) 按索引获取匹配元素中的第n个元素,索引从0开始 first( ) 获取匹配元素中的第1个元素 last( ) 获取匹配元素中的最后1...添加节点时,需要先单击选中某个一级或二级节点,然后在文本框中填写新添加的节点名,单击【添加】按钮把节点名作为新节点添加到选中的节点下面。删除节点只实现删除三级节点即可。

    1.2K10

    【前端词典】4 种滚动吸顶实现方式的比较

    二、使用 JQuery 的 offset().top 实现 我们知道 JQuery 中封装了操作 DOM 和读取 DOM 计算属性的 API,基于 offset().top 这个 API 和 scrollTop...这样实现固然可以,不过由于 JQuery 慢慢的退出历史的舞台,我们在代码中尽量不使用 JQuery 的 API。我们可以基于 offset().top 的源码自己处理原生 offsetTop。...三、使用原生的 offsetTop 实现 我们知道 offsetTop 是相对定位父级的偏移量,倘若需要滚动吸顶的元素出现定位父级元素,那么 offsetTop 获取的就不是元素距离页面顶部的距离。...(在 IE 中,默认坐标从(2,2)开始计算,只返回 top,lef,right,bottom 四个值) 2. offsetTop: 用于获得当前元素到定位父级( element.offsetParent...(保存变量); 在使用的时候可能出现 DOM 没有初始化,就读取了该属性,这个时候会返回 0;对于这个问题我们需要等到 DOM 元素初始化完成后再执行。

    3.1K60
    领券