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

通过 JS 实现简单的拖拽功能并且可以在特定元素禁止拖拽

本文的重点是讲解如何在某些特定元素禁止拖拽。这是我在编写插件时遇到的问题,其实很多插件的拖拽功能并没有处理这些细节,经过翻阅 jquery ui 的源码才找到答案。...,比如可以指定整个 modal 拖拽元素 draggable('#modal','#modal'); 拖拽问题 整个拖拽功能并没有太大的问题,但是如果我们拖拽关闭按钮,仍然可以拖拽整个 modal,看起来不太和谐而且在某些情况下会影响功能...排除特定元素的方法 关于如何排除特定元素的方法,很多人会推荐阻止冒泡的方法,但是我试了很多次,这种方法是不行的,因为拖拽事件绑定在了 document 对象上。...解决的方法就是在拖拽开始时添加限制条件,代码如下 ......因为我们在排除特定元素的同时也要排除它的子元素。如果使用原生 JS 的话,需要添加获取子元素的方法。

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

    元素添加边框,你有多少种好办法?

    作者:莫卓颖 背景 相信大家在做项目的过程中会经常遇到这样的一个需求,鼠标hover到某个元素的时候这个元素添加边框,这个简单的需求仅需注意添加边框后不会对原有的位置造成布局的影响从而造成布局跳动。...方案一 实现思路:元素中预先设置边框,边框的颜色与元素所在父元素背景色一致,边框大小与hover时候的边框大小一致,鼠标hover过元素的时候只需要设置边框颜色便可。...2px; height: 200px; float: left; } .parent li:hover{ border:2px solid yellow; } 方案二 实现思路:首先设置元素...position:relative,然后添加额外隐藏的边框元素,鼠标hover过元素的时候显示提前隐藏的边框元素 兼容问题:无 实现代码: HTML结构 ...,利用h5的新属性box-shadow元素添加实体的阴影作为边框 兼容性: 实现代码: HTML结构

    96400

    元素添加边框,你有多少种好办法?

    本文作者:IMWeb 莫卓颖 原文出处:IMWeb社区 未经同意,禁止转载 背景 相信大家在做项目的过程中会经常遇到这样的一个需求,鼠标hover到某个元素的时候这个元素添加边框,这个简单的需求仅需注意添加边框后不会对原有的位置造成布局的影响从而造成布局跳动...方案一 实现思路:元素中预先设置边框,边框的颜色与元素所在父元素背景色一致,边框大小与hover时候的边框大小一致,鼠标hover过元素的时候只需要设置边框颜色便可。...2px; height: 200px; float: left; } .parent li:hover{ border:2px solid yellow; } 方案二 实现思路:首先设置元素...position:relative,然后添加额外隐藏的边框元素,鼠标hover过元素的时候显示提前隐藏的边框元素 兼容问题:无 实现代码: HTML结构 ...,利用h5的新属性box-shadow元素添加实体的阴影作为边框 兼容性: ?

    69020

    元素添加边框,你有多少种好办法?

    背景 相信大家在做项目的过程中会经常遇到这样的一个需求,鼠标hover到某个元素的时候这个元素添加边框,这个简单的需求仅需注意添加边框后不会对原有的位置造成布局的影响从而造成布局跳动。...方案一 实现思路:元素中预先设置边框,边框的颜色与元素所在父元素背景色一致,边框大小与hover时候的边框大小一致,鼠标hover过元素的时候只需要设置边框颜色便可。...2px; height: 200px; float: left; } .parent li:hover{ border:2px solid yellow; } 方案二 实现思路:首先设置元素...position:relative,然后添加额外隐藏的边框元素,鼠标hover过元素的时候显示提前隐藏的边框元素 兼容问题:无 实现代码: HTML结构 ...,利用h5的新属性box-shadow元素添加实体的阴影作为边框 兼容性: ?

    95370

    css推荐写法

    禁止将样式写单行 .hotel-content {margin: 10px; background-color: #efefef;} 单行显示不好注释,不好备注,这应该是压缩工具的活儿~ 7....禁止向 0 后添加单位 前端高质量代码一书中提到过 .obj { left: 0px; } 8....,但是当他加载完毕之后,那块0的空间突然被撑开了,这样会导致,他下面的元素重新排列和渲染,造成重绘(repaint)和回流(reflow)。...(推荐)当编写针对特定html结构的样式时,使用元素名 + 类名 /* 所有的inner都是针对div编写的 */ div.inner { ...... } ".a div"和".a div.b...,一些元素在浏览器中默认有margin或padding值,但是只是部分元素,没有必要将所有元素的margin、padding值都置0,包括我们页面都没使用到的元素,这样对性能有影响,而且一个网页能用到的标签都是有限的

    95220

    原生 JS DOM 常用操作大全

    阻止事件的默认跳转行为 }) 禁止鼠标选中文字 //2.selectstart 禁止鼠标选中文字 documnet.addEventListener(“selectstart”,function(e)...包括导致事件的元素、事件的类型以及其他与特定事件相关的信息。事件触发时系统会产生一个事件对象,并且系统会以实参的形式传给事件处理函数在事件处理程序中声明一个形参用来接收事件参数。 //1..../是否包含此类名, 返回布尔值判断是否存在 calssName 是保留字,因此使用 calssName 来操作元素类名属性 取消 a 标签的默认跳转 方法一: 在处理程序内的最后 添加 return...不克隆里面的子节点如果括号参数true,则是深度拷贝,会复制节点本身以及里面所有的子节点 DOM的核心总结 DOM操作,我们主要针对于元素的操作。...//在父节点的末尾添加节点insertBefore //可以指定子节点的添加位置 删除 removeChild 改 主要修改DOM元素的属性,DOM元素的内容,属性,表单的值等。

    10210

    jquery使按钮置灰不可用

    使用jQuery实现按钮置灰不可用效果在Web开发中,有时候我们需要在特定情况下将按钮置灰并设置不可用状态,以防止用户重复点击或者暂时禁止某些操作。本文将介绍如何使用jQuery来实现这一效果。...如果需要给按钮添加文本提示,可以使用attr("title", "按钮已禁用")。...按钮置灰不可用的效果经常用于表单提交时,为了避免用户重复提交表单或者在表单提交过程中禁止其他操作。下面是一个示例代码,结合一个简单的表单提交场景,演示如何使用jQuery实现按钮置灰不可用的效果。...disabled是HTML中常用的属性,用于禁用某些元素,例如按钮、输入框等,使其变为不可用状态。当元素被禁用时,用户无法与该元素进行交互,无法点击按钮、输入内容或选择选项等操作。1....使用方法:在HTML中,将disabled属性添加到需要禁用的元素标签中即可,例如:htmlCopy codeSubmit<input type="text

    41510

    FastClick用法

    使用needsclick过滤特定元素 如果页面上有一些特定元素不需要使用fastclick来立刻触发点击事件,可以在元素的class上添加needsclick: <a class="needsclick...document.body); }, false); } 不需要使用fastclick的情况 以下这几种情况是不需要使用fastclick: 1、FastClick是不会对PC浏览器<em>添加</em>监听事件...2、Android版Chrome 32+浏览器,如果设置viewport meta的值<em>为</em>width=device-width,这种情况下浏览器会马上出发点击事件,不会延迟300毫秒。...4、IE11+浏览器设置了css的属性touch-action: manipulation,它会在某些标签(a,button等)<em>禁止</em>双击事件,IE10的<em>为</em>-ms-touch-action: manipulation...auto,将其置<em>为</em> none 即可移除目标<em>元素</em>的 300 毫秒延迟 缺点: 新属性,可能存在浏览器兼容问题 4. tap事件 zepto的tap事件, 利用touchstart和touchend

    1.3K20

    Selenium异常集锦

    服务器端错误的一些常见响应代码是: 401:未经授权 400:错误的请求 500:内部服务器错误 409:冲突 403:禁止 405:方法被禁止 ImeActivationFailedException...避免此类Selenium异常,建议在基于浏览器的自动化测试代码中添加有关切换到iframe的方式时进行健全性检查。检查使用的iframe索引是否正确。...要处理此异常,测试人员编写代码时应该导航到必须在其中添加Cookie的正确URL地址。 InvalidCoordinatesException 将错误的坐标提供给交互操作时,将引发此特定异常。...这也意味着依赖于鼠标位置(例如单击)的动作之前没有进行移动操作,或者移动操作提供了无效的坐标。...此特定Selenium异常的某些可能原因是: 该元素可能在刷新的iFrame中。 该页面可能已刷新,并且要访问的元素不再是当前页面的一部分。 由于元素已定位,但是不能被删除和重新添加到屏幕。

    5.3K20

    数据可视化设计指南

    使用条形图表示随时间变化的趋势或各个类别之间的差异(这个图X轴数据数值,Y轴日期)。 ? 禁止。 不要使用多个饼图来显示数据趋势的变化。...在上图表中,每个类别均由特定的形状(圆形,正方形和三角形)表示,这使得可以轻松比较分析特定范围内不同类别的数据。 形状 图表可以使用多种形状以表示不同数据。可以将形状设置曲线,精确的折现等。...折线图可以应用于特定元素,包括: 数据预警 不同类别占比 置信区间 异常波动 ? 允许。 改变线的纹理以表示不同的数据类别。 ? 禁止。 请勿使用不同的颜色来显示同一数据不同类别的数据。...粗体仅用于一个或两个关键元素,就可以实现设计平衡。 ? 禁止。 在太多元素上使用粗体会使得识别重要元素变得更加困难。 ICON ICON可以表示图表中不同类型的数据,并可以提高图表的整体可读性。...禁止。 不要在图表X轴上添加过多的数值文本。 文字方向 文本标签应水平放置在图表上,以便于阅读。 文字标签不应: 旋转文字角度 垂直堆叠文字 ? 允许。

    6.1K31

    13 Java 集合

    有些集合对其可以包含的元素做了限制。例如,有的集合禁止使用 null 作为元素。EnumSet 要求其中的元素只能是特定的枚举类型。...如果尝试把禁止使用的元素添加到集合中,会抛出未检异常,例如 NullPointerException 或 ClassCastException。...检查集合中是否包含禁止使用的元素,可能也会抛出这种异常,或者仅仅返回 false。 List接口 List 是一组有序的对象集合。...列表中的每个元素都有特定的位置,而且 List 接口定义了一些方法,用于查询或设定特定位置(或叫索引)的元素。从这个角度来看,List 对象和数组类似,不过列表的大小能按需变化,以适应其中元素的数量。...除了基于索引的 get() 和 set() 方法之外,List 接口还定义了一些方法,用于把元素添加特定的索引,把元素特定的索引移除,或者返回指定值在列表中首次出现或最后出现的索引。

    2.3K20
    领券