为什么UL不显示?

来源:4-3 [DOM事件] QQ面板状态切换效果

superhuman进化中

2016-11-07 10:46

为什么UL不显示?以下是JS代码

function getByClass(clsName,parent){
    var oParent=parent?document.getElementById(parent):document,
        eles=[],
        elements=oParent.getElementsByTagName('*');
        
        for(var i=0,l=elements.length;i<l;i++){
            if(elements[i].className==clsName){
                eles.push(elements[i]);
            }
        }
    return eles;
}
window.onload=drag;
function drag(){
    var oTitle=getByClass('login_logo_webqq','loginPanel')[0];
       // 拖曳
    oTitle.onmousedown=fndown;
       // 关闭
    var oClose=document.getElementById('ui_boxyClose');
    oClose.onclick=function(){
    document.getElementById('loginPanel').style.display='none';
        }
}

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);
    }
    document.onmouseup=function(){
        document.onmousemove=null;
        document.onmouseup=null;
    }
    //切换状态
    var loginState=document.getElementById('loginState'),
        statelist=document.getElementById('loginStatePanel'),
        list=statelist.getElementsByTagName('li'),
        icon=document.getElementById('loginStateShow'),
        text=document.getElementById('login2qq_state_txt');
        
        loginState.onclick=function(){
            statelist.style.display='block';
        }
    
}
function fnmove(e,posX,posY){
    var oDrag=document.getElementById('loginPanel'),
        l=e.clientX-posX,
        t=e.clientY-posY,
        winW=document.documentElement.clientwidth ||document.body.clientwidth,
        winH=document.documentElement.clientheight ||document.body.clientheight,
        maxW=winW-oDrag.offsetwidth-10,
        maxH=winH-oDrag.offsetheight-10;
        if(l<0){l=10;}else if(l>maxW){l=maxW;}
        if(t<0){t=10;}else if(l>maxH){t=maxH;}
     oDrag.style.left=l+'px';
     oDrag.style.top=t+'px';    
}
 

写回答 关注

0回答

还没有人回答问题,可以看看其他问题

DOM事件探秘

DOM事件?本课程会通过实例来给小伙伴们讲解如何使用这些事件

99532 学习 · 1305 问题

查看课程

相似问题