html5规定元素是否可拖动的属性draggable


本文摘自PHP中文网,作者黄舟,侵删。

实例

一个可拖动的段落:

1

<p draggable="true">这是一个可拖动的段落。</p>

浏览器支持


IE

Firefox

Chrome

Safari

Opera


Internet Explorer 9+, Firefox, Opera, Chrome, and Safari 支持 draggable 属性。

注释:Internet Explorer 8 以及更早的版本,不支持 draggable 属性。

定义和用法

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

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

提示:draggable 属性常用在拖放操作中。请在我们的拖放教程中学习更多内容。

HTML 4.01 与 HTML5 之间的差异

draggable 属性是 HTML5 中的新属性。

语法

1

<element draggable="true|false|auto">

属性值

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

实例:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

<!DOCTYPE html>

<html class="no-js">

 

    <head>

        <meta charset="utf-8">

        <title>HTML5-draggable(拖放)</title>

        <style type="text/css">

            #div1, #div2 {float:left; width:100px; height:35px; margin:10px;padding:10px;border:1px solid #aaaaaa;}

        </style>

        <script src="js/modernizr.js" type="text/javascript" charset="utf-8"></script>

        <script type="text/javascript">

            /*

             * 虽然已经设定了img元素可被拖动,但是浏览器默认地,无法将数据/元素放置到其他元素中。

             * 如果有需要设置某些元素可接受被拖动元素,则要阻止它的默认行为,

             * 这要通过设置该接收元素的ondragover 事件,调用event.preventDefault() 方法

             */

            function allowDrop(ev) {

                ev.preventDefault(); //阻止默认行为

                 

                //ev.target.id

                //此处ev.target是接收元素,通过事件被绑定在哪个元素即可区分

            }

 

            /*

             * 当该img元素被拖动时,会触发一个ondragstart 事件,该事件调用了一个方法drag(event)。

             */

            function drag(ev) {

                //ev.dataTransfer.setData() 方法设置被拖数据的数据类型(Text)和值(被拖元素id),

                //该方法将被拖动元素的id存储到事件的dataTransfer对象内,ev.dataTransfer.getData()可将该元素取出。

                //此处ev.target是被拖动元素

                ev.dataTransfer.setData("Text", ev.target.id);

            }

 

            /*

             * 当被拖元素移动到接收元素,

             * 松开鼠标时(即被拖元素放置在接收元素内时)会出发ondrop事件

             */

            function drop(ev) {

                ev.preventDefault(); //阻止默认行为

                var data = ev.dataTransfer.getData("Text"); //将被拖动元素id取出

                ev.target.appendChild(document.getElementById(data)); //将被拖动元素添加到接收元素尾部

            }

        </script>

    </head>

 

    <body>

 

        <div id="div1" ondrop="drop(event)" ondragover="allowDrop(event)">

            <!--为了使元素可拖动,把 draggable 属性设置为 true-->

            <img src="http://www.w3school.com.cn/i/w3school_logo_black.gif" draggable="true" ondragstart="drag(event)" id="drag1" />

        </div>

         

        <div id="div2" ondrop="drop(event)" ondragover="allowDrop(event)"></div>

 

    </body>

 

</html>

}}@}FBL}`4F~`D}_R7TW_PS.png ){TK1LR}PFGTM_IEHL083Y3.png

以上就是html5规定元素是否可拖动的属性draggable的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

HTML5 网络拓扑图应用实例讲解

详解HTML5之pushstate、popstate操作history无刷新改变当前url代码实例

h5中的弹窗无法用webview弹出怎么解决

HTML5标准学习-编码详解

HTML5多媒体audio和video详细介绍(二)

h5手机扫码怎么实现

HTML5如何使用canvas画空心圆与实心圆

HTML5 figure和figcaption的使用方法

HTML5 canvas绘制爱心的方法示例

详解HTML5的video标签测试应用

更多相关阅读请进入《HTML5》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...