Web--js高級--12月21日隨筆
阿新 • • 發佈:2019-01-02
低版本 cto 沒有 rev sel 圖片 fault window off
問題:
在拖拽元素的時候,如果元素的內部加了文字或者圖片,拖拽效果會失靈?
因為瀏覽器會給文字和圖片一個默認行為,當文字和圖片被選中的時候,會有一個拖拽的效果,即使我們沒有人為他添加。所以當我們點擊這個元素拖拽時,有可能選中文字或圖片,觸發瀏覽器天生給的那個行為,從而導致我們寫的那個拖拽效果失靈。
obj.onmousedown=function(ev){
var ev=ev||window.event;
var _this=this;
var x=ev.clientX-this.offsetLeft;
var y=ev.clientY-this.offsetTop;
if(obj.setCapture){
obj.setCapture()
}else{
ev.preventDefault?ev.preventDefault():ev.returnValue=false;
}
在down下加setCapture這個全局捕獲方法
setCapture() 全局捕獲的方法 他是ie低版本所特有的。給一個元素添加了這個方法之後,無論我們在頁面的那個地方觸發了相同的事件,都會觸發這個元素。
新增獲取元素的方法
Document.querySelector()獲取的是單個元素
Document.querySelectorAll() 獲取的是元素組
括號裏可以寫 div .div #div
Web--js高級--12月21日隨筆