html5 拖动效果怎么在手机上实现

JavaScript026

html5 拖动效果怎么在手机上实现,第1张

html5 拖动效果在手机上实现方法是调用drag和drop一系列函数实现的。

注意:拖拽源在拖拽操作结束将得到dragend事件对象,不管操作成功与否。

举例:

定义可拖放内容

<div id="columns">

 <div class="column" draggable="true"><header>A</header></div>

 <div class="column" draggable="true"><header>B</header></div>

 <div class="column" draggable="true"><header>C</header></div>

</div>

2、监听拖动事件

可附加大量不同事件以监听整个拖放过程:

dragstart

drag

dragenter

dragleave

dragover

drop

dragend

a.这里是开始拖拽

function handleDragStart(e) {

 this.style.opacity = '0.4' // this / e.target is the source node.

}

var cols = document.querySelectorAll('#columns .column')

[].forEach.call(cols, function(col) {

 col.addEventListener('dragstart', handleDragStart, false)

})

b.dragenter、dragover 和 dragleave 事件处理程序可用于在拖动过程中提供额外的可视化提示。例如,在拖动期间将鼠标悬停在某一列上方时,其边框可能会变成虚线。这样,用户就能知道这些列也是放置的目标区域。

手机移动端滑动事件当然是有的

touchmove即为滑动事件

还有其他触摸事件,都给列一下:

touchstart事件:当手指触摸屏幕时候触发,即使已经有一个手指放在屏幕上也会触发。

touchmove事件:当手指在屏幕上滑动的时候连续地触发。在这个事件发生期间,调用preventDefault()事件可以阻止滚动。

touchend事件:当手指从屏幕上离开的时候触发。

touchcancel事件:当系统停止跟踪触摸的时候触发。关于这个事件的确切出发时间,文档中并没有具体说明,咱们只能去猜测了。

拖动到一个div里这个jq ui有例子就不说了,重点就是拖进去后样式的变化,就是在原件拖入后,那么1个元素变2个了,就必须在他们的2个元素外城wrap一个div 给包着。然后用css 修改里面元素的样式:大小,以及元素间的间距.

<style>

.bao,.box{width:60pxheight:60pxposition:absolute}

.bao .box{width:20pxheight:20pxposition:relativedisplay:inline-blockmargin:5px}

</style>

<div class="box box1"></div>

<div class="bao">

<div class="box box2"></div>

<div class="box box3"></div>

</div>

大概就是这样的一个思路