求幫忙看看哪錯(cuò)了..拖曳不動(dòng)
摔!!明明是按照視頻一條一條寫(xiě)的啊..寫(xiě)到有bug的那個(gè)還能拖曳,然后改完之后就拖不動(dòng)了...
//封裝通過(guò)class獲取元素的函數(shù)
??function?getByClass(clName,parent){
????//首先把父元素取出來(lái),如果傳了父元素,那么我們希望返回的是父元素的id,如果沒(méi)有傳,那么父元素就是document
????var?oParent=parent?document.getElementById(parent):document,
????//定義一個(gè)數(shù)組,這個(gè)數(shù)組將用來(lái)裝從所有元素中取到的有改class的元素
????????eles=[],
????????//取出所有元素
????????elements=document.getElementsByTagName('*');
????????for?(var?i?=?0;?i?<?elements.length;?i++)?{
??????????eles.push(elements[i]);
????????}
????????//返回我們?nèi)〉降臄?shù)組
????????return?eles;
??}
??window.onload=drag;
??//整個(gè)拖曳過(guò)程分為三步
??//1、確定用戶(hù)點(diǎn)擊的是log部分的區(qū)域
??function?drag(){
????//用getByClass取到改div
????var?oTitle=getByClass("login_logo_webqq","loginPanel")[0];
????//onmousedown鼠標(biāo)點(diǎn)擊時(shí)發(fā)生
????oTitle.onmousedown=fnDown;
??}
??function?fnDown(event){
????event=event||window.event;//兼容
????//把整個(gè)面板取出來(lái)
????var?oDrag=document.getElementById('loginPanel'),
??????//光標(biāo)按下時(shí)光標(biāo)和面板之間的距離
????????disX=event.clientX-oDrag.offsetLeft,
????????disY=event.clientY-oDrag.offsetTop;
??????//移動(dòng)
????document.onmousemove=function(event){
????????event=event||window.event;
????????fnMove(event,disX.disY);
????};
??}
??function?fnMove(e,posX,posY){
????var?oDrag=document.getElementById('loginPanel'),
????????l=e.clientX-posX,
????????t=e.clientY-posY;
????oDrag.style.left=l+"px";
????oDrag.style.top=t+"px";
??}
2019-01-07
可以chrom按F12查看錯(cuò)誤信息哦~~!
2016-12-26
for (var i = 0; i < elements.length; i++) {
???? if(elements[i].className == clsName){
???? eles.push(elements[i]);
???? }
}
寫(xiě)掉了一句!