HTML5解说之拖拽事件dragstart、drag和dragend-
通过拖拽事件,咱们就可以控制拖拽许多东西了。其中什么元素或者是哪里产生了拖拽事件是最关键的。有些事件是在被拖动的元素上触发,有些事件是在放置指标上触发的。拖动某元素时候,触发的事件有:dragstart事件、drag事件和dragend事件。
按下鼠标键并开端挪移鼠标的时候,会在被拖拽的元素上触发dragstart事件。这时候光标酿成”不克不及放”符号(圆环中有一条反歪线),表示不克不及把元素放在本人上门。拖拽开端时,可以通过ondragstart事件处置程序运转JavaScript代码。
触发dragstart事件后,随即会触发drag事件,而在元素被拖动期间会延续触发drag事件。这个事件与mousemove和touchmove事件相似。当拖动休止时(不管把元素放到了有效的放置指标,还是放到了无效的放置指标上),都会产生dragend事件。
上面说的三个事件的指标都是被拖动的元素触发。默许状况下,阅读器不会再拖动期间转变被拖动元素的外不雅。但是可以自行修改。不外,大多数阅读器会为正被拖动的元素新建一个半透亮的副本,这个副本始终追随光标挪移。当某个元素被拖动到一个有效的放置指标的时候,会触发的事件有:dragenter事件、dragover事件和dragleave或者drop事件。
只有有元素被拖动到放置指标上,就会触发dragenter事件(相似于mou搜索引擎优化ver事件)。紧随其后的是dragover事件,并且在被拖动的元素还在放置指标的范畴内挪移是,会陆续触发dragover事件。要是元素被拖出放置指标,dragover事件不再产生,但是会触发dragleave事件(相似于mou搜索引擎优化ut事件)。要是元素被放到了放置指标中会触发drop事件而不是dragleave事件。dragenter事件、dragover事件和dragleave或者drop事件的指标都是作为放置指标的元素。
自定义放置指标
在拖动元素经过某些无效放置指标的时候,可以看到一种特别鼠标手势(圆环中一条反歪线),表示不克不及放置。虽然所有元素都支撑放置指标事件,但是这些元素默许是不允许放置的。要是拖动元素经过不允许放置的元素,不管会员怎样操纵,都不会产生drop事件。不外,你可以把任何元素酿成有效的放置指标,办法是重写dragenter和dragover事件的默许行为。
重写了默许行为之后,就会发明当拖动着元素挪移到放置指标上的时候,光标酿成允许放置的符号。在Firefox 3.5+中,放置事件的默许行为是打开被放到放置指标上的url。要是是把图像拖到放置指标上,页面就会转向图像文件。要是是把文本拖放到放置指标上,则会致使无效url差错。所认为了让Firefox支撑政正常的拖放,还要取消drop事件的默许行为,阻止打开拖拽元素的URL。小例子如下
HTML代码
以上就是HTML5解说之拖拽事件dragstart、drag和dragend的细致内容,更多请关注 百分百源码网 其它相干文章!