求幫忙看看哪錯了..拖曳不動
摔!!明明是按照視頻一條一條寫的啊..寫到有bug的那個還能拖曳,然后改完之后就拖不動了...
//封裝通過class獲取元素的函數
??function?getByClass(clName,parent){
????//首先把父元素取出來,如果傳了父元素,那么我們希望返回的是父元素的id,如果沒有傳,那么父元素就是document
????var?oParent=parent?document.getElementById(parent):document,
????//定義一個數組,這個數組將用來裝從所有元素中取到的有改class的元素
????????eles=[],
????????//取出所有元素
????????elements=document.getElementsByTagName('*');
????????for?(var?i?=?0;?i?<?elements.length;?i++)?{
??????????eles.push(elements[i]);
????????}
????????//返回我們取到的數組
????????return?eles;
??}
??window.onload=drag;
??//整個拖曳過程分為三步
??//1、確定用戶點擊的是log部分的區域
??function?drag(){
????//用getByClass取到改div
????var?oTitle=getByClass("login_logo_webqq","loginPanel")[0];
????//onmousedown鼠標點擊時發生
????oTitle.onmousedown=fnDown;
??}
??function?fnDown(event){
????event=event||window.event;//兼容
????//把整個面板取出來
????var?oDrag=document.getElementById('loginPanel'),
??????//光標按下時光標和面板之間的距離
????????disX=event.clientX-oDrag.offsetLeft,
????????disY=event.clientY-oDrag.offsetTop;
??????//移動
????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查看錯誤信息哦~~!
2016-12-26
for (var i = 0; i < elements.length; i++) {
???? if(elements[i].className == clsName){
???? eles.push(elements[i]);
???? }
}
寫掉了一句!