拖拽问题

在拖拽元素的时候,如果元素内的内部加了文字或者图片,拖拽效果会失灵?

浏览器会给文字和图片一个默认行为,当文字和图片被选中的时候,会有一个拖拽的效果即使我们没有人为他添加,所有当我们点击这个元素拖拽的时候有可能选中文字或者图片触发浏览器天生给的那个行为,从而导致我们写的那个拖拽的效果失灵、

怎么解决?

div.onmousedowm=function(ev){

  var ev=ev||window.event;

  var _this=this;

  var x = ev.clientX-this.offsetLeft;

  var y = ev.clientY-this.offsetTop;

  if(div.setCapture){

    div.setCapture()  

  }else{

    ev.preventDefault?ev.preventDefault():ev.re

}

 

setCapture()全局捕获的方法,他是IE低版本所持有的,给一个元素添加了这个方法之后,无论我们在页面的那个地方触发了相同的事件,都会触发这个元素

新增获取元素的方法

  Document.querySelector()获取的是单个元素

  Document.querySelectorAll()获取的是元素组

  括号里可以写div   .div   #div    

posted on 2018-12-21 16:10  梦泽123  阅读(92)  评论(0编辑  收藏  举报

导航