HTML5新增的拖拽属性draggable,怎么实现拖拽?

这篇具有很好参考价值的文章主要介绍了HTML5新增的拖拽属性draggable,怎么实现拖拽?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

draggable定义和用法:

1、draggable 属性规定元素是否可拖动。

2、提示: 链接和图像默认是可拖动的。

3、提示: draggable 属性经常用于拖放操作。

注意:draggable 属性是 HTML5 新增的。

设置属性值

描述
true 规定元素是可拖动的。
false 规定元素是不可拖动的。
auto 使用浏览器的默认特性。

使用语法:<element draggable="true|false|auto"> 

代码演示:

//拖拽功能示例

html:
<div id="div1">
    <p id="drag1" draggable="true" ondragstart="dragStart(event)"     
     ondrop="drop(event)" ondragend="dragEnd(event)">拖拽标签</p>
</div>


js:

//p标签定义拖拽开始
function dragStart(e){
   //拖拽前操作
}

//拖拽移动
function drop(e){
    e.preventDefault();
}

//结束拖拽
function dragEnd(e){
    e.preventDefault();
}

拓展一下其他方法:

        其实还有一种方法,如果是jquery项目,可以用jquery-ui.js的脚本,这样就可以不用在标签上面设置draggable='true'和绑定一堆事件了。

//使用标签绑定draggable的html:
<html>
    <div id="div1">
        <p id="drag1" draggable="true" ondragstart="dragStart(event)"     
         ondrop="drop(event)" ondragend="dragEnd(event)">拖拽标签</p>
    </div>
</html>

//使用jquery-ui.js后的html标签示例
<html>
    <div id="jquery_div">
        <p id="jquery_drag">拖拽标签</p>
    </div>
</html>

<script src="/jquery-ui.js"></script>
<script>
    //按需使用
    $('#jquery_drag').draggable({
       //helper: "clone",         //拖动时克隆,默认是 original
       //axis:"x",                //拖动方向
       containment:"#jquery_div",    //一个容器,div就只能在容器的范围内活动了
       cursor: "move",            //拖动时鼠标指针的状态 ,
       cursorAt:{top:10},         //拖动的时候鼠标指针的位置,相对被拖动对象的边框,单位px
       opacity: 0.40,             //设置对象被拖动时的透明度
       handle: "div",             //设置拖动控制器,当鼠标按住控制器的时候,才能拖动对象
       scroll:false,              //设置当拖动超出整个浏览器窗口,是否滚动浏览器
       distance: 20,              //设置当鼠标拖动多少像素时对象才会移动
       //delay: 1000,             //设置延迟时间 单位毫秒
       grid:[50,50],              //设置每次拖动的步进 单位px
       dragPrevention:['input'],  //设置被拖动的div碰到那些dom元素时停止
       start:function(e){},    //开始拖动执行的函数
       drag:function(e){},     //拖动时执行的函数
       stop:function(e){}      //拖动停止执行的函数
    });
    
    //默认方式:什么都不定义也可以拖动
     $('#jquery_drag').draggable();

</script>

Tips:文中如有疑问或者错处,可以私信“且慢码农”。文章来源地址https://www.toymoban.com/news/detail-592901.html

到了这里,关于HTML5新增的拖拽属性draggable,怎么实现拖拽?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 【HTML5高级第三篇】drag拖拽、音频视频、defer/async属性、dialog应用

    【HTML5高级第三篇】drag拖拽、音频视频、defer/async属性、dialog应用

    原生JavaScipt案例合集 JavaScript +DOM基础 JavaScript 基础到高级 Canvas游戏开发 1.1 拖拽事件 ondrag: 拖拽 ondragenter: 拖拽进入 ondragleave: 拖拽离开 ondragstart: 拖拽开始 ondragend: 拖拽结束 ondragover:悬浮 ondrop: 丢弃事件 该事件有一个bug,dargover事件中的默认行为阻止了ondrop事件不能够执行,

    2024年02月09日
    浏览(14)
  • HTML5、JS实现元素拖拽排序

    HTML5、JS实现元素拖拽排序

    先介绍一下html5的drag属性,拖放(Drag 和 drop)是 HTML5 标准的组成部分。想要启用drag,只要给元素加上draggable=\\\"true\\\"就行了(Safari 5.1.2除外)。 拖动事件 事件分为两类,当前拖动的元素上的事件,以及要放置的位置接收到的事件。 一.发生在拖动元素上的事件: 事件名 触发时

    2024年02月11日
    浏览(15)
  • react-draggable实现拖拽详解

    react-draggable实现拖拽详解

    属性 默认值 介绍 axis x handle拖动的方向,可选值 x ,y,both handle 无 指定拖动handle的class position 无 handle的位置,需要实时改变,否则handle无法拖动,类似于react的受控组件 onStrat 方法 拖动开始 onDrag 方法 拖动中 onStop 方法 结束拖动 onMouseDown 方法 触发点击 属性名称 说明 bounds 指

    2024年02月15日
    浏览(9)
  • 【HTML5系列】第一章 · HTML5新增语义化标签

    【HTML5系列】第一章 · HTML5新增语义化标签

            Hello大家好, 我是【 麟-小白 】,一位 软件工程 专业的学生,喜好 计算机知识 。希望大家能够一起 学习进步 呀!本人是一名 在读大学生 ,专业水平有限,如发现 错误 或 不足之处 ,请多多指正!谢谢大家!!!         如果 小哥哥小姐姐们 对我的文章感兴趣

    2024年02月04日
    浏览(48)
  • HTML5新增特性

    HTML5新增特性

    HTML从1993年发展开始到1999年,从1.0版本发展到4.01版本,4.01版本是一个通用版本,在很长一段时间制作HTML网页都是使用4.01版本。 后续发展版本号发生了变化,没有直接发展到HTML5,而是到2000年发展为XHTML1.0版本,这个版本是对之前4.01版本的一个严格化和升级,但是并没有增

    2024年04月23日
    浏览(18)
  • HTML5新增元素

    HTML5新增了许多元素,其中新增的结构元素大大增加了网页结构设计的效率。同时为了体现表现与类容分离,这些元素仅有字面意思,还得靠CSS来设置样式。 定义文档的头部区域,一般包含logo,搜索框等信息 定义文档的末尾版权信息显示部分。一般包含作者、联系方式等。

    2024年04月13日
    浏览(16)
  • HTML5新增的标签

    header :头部标签 nav :导航标签 article :内容标签 section :定义文档某个区域 aside :侧边栏标签 footer :尾部标签 当前audio仅支持三种视频格式:尽量使用mp3格式 常见属性: 属性 值 描述 autoplay autoplay 如果出现该属性,则音频在就绪后马上播放 controls controls 如果出现该属性,则向用户

    2024年02月04日
    浏览(14)
  • html5怎么实现语音搜索

    html5怎么实现语音搜索 谷歌的网站在他们首页发现了HTML5的新玩法——语音搜索。 注意: 只有webkit核心的浏览器才能使用 用法很简单 只需要在input添加属性x-webkit-speech即可,例子如下: 代码如下: 这样你的输入框右边里就多了个「小话筒」,点击的时候就会提示 这时说出来

    2024年02月08日
    浏览(5)
  • HTML5 新增内容 新特性

    number:数字; tel:电话; search:搜索; email:邮箱; url:地址; date:年月日; time:时分秒; month:月; week:周; time:时间; color:生成颜色选择表单; range:范围 原有 text:文本 radio:单选 password:密码 button:按钮 checkbox:多选 file:文件 image:图片 submit:提交 re

    2024年02月09日
    浏览(9)
  • Html提高——HTML5 新增的语义化标签

    以前布局,我们基本用 div 来做。div 对于搜索引擎来说,是没有语义的。 但是在html5里增加了语义化标签,如 这种语义化标准主要是针对搜索引擎的 这些新标签页面中可以使用多次 在 IE9 中,需要把这些元素转换为块级元素 其实,我们移动端更喜欢使用这些标签 HTML5 还增加

    2024年03月22日
    浏览(16)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包