jsp页面的div层的弹出效果

来源:互联网 发布:js酷炫特效 编辑:程序博客网 时间:2024/06/14 06:34
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>   
<head>   
<meta name="GENERATOR" content="Microsoft FrontPage 6.0">   
<meta name="ProgId" content="FrontPage.Editor.Document">   
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">   
<title>new page</title>   
<script type="text/javascript" language="javascript">   
function crertdiv(_parent,_element,_id,_css){//创建层   
                var newObj = document.createElement(_element);   
                if(_id && _id!="")newObj.id=_id;   
                if(_css && _css!=""){   
                        newObj.setAttribute("style",_css);   
                        newObj.style.cssText = _css;   
                }   
                if(_parent && _parent!=""){   
                        var theObj=getobj(_parent);   
                        var parent = theObj.parentNode;   
                        if(parent.lastChild == theObj){   
                                theObj.appendChild(newObj);   
                        }    
                        else{   
                                theObj.insertBefore(newObj, theObj.nextSibling);   
                        }   
                }   
                else        document.body.appendChild(newObj);   
}   
function getobj(o){//获取对象   
                return document.getElementById(o)   
}   
var swtemp=0,objtemp;   
function showdiv(inputid,inputlist){//显示层   
        if (swtemp==1){getobj(objtemp+"mydiv").style.display="none";}   
        var text_list=inputlist.split(",")   
                if (!getobj(inputid+"mydiv")){//若尚未创建就建之   
                        var divcss="font-size:12px;color:#00f;position:absolute;left:"+(getobj(inputid).offsetLeft+0)+"px;top:"+(getobj(inputid).offsetTop+25)+"px;border:1px solid red"  
                        crertdiv("","div",inputid+"mydiv",divcss);//创建层"mydiv"   
                        //alert(document.getElementById("mydiv").outerHTML)   
                        crertdiv(inputid+"mydiv","ul",inputid+"myul");//创建ul           
                        for (var i=0,j=text_list.length;i<j;i++){//创建"text_list"li   
                                crertdiv(inputid+"myul","li",inputid+"li"+i,"background:#fff");   
                                getobj(inputid+"li"+i).innerHTML=text_list;   
                        }   
                        crertdiv(inputid+"myul","li",inputid+"li"+j,"color:#f00;background:#fff");//创建"clear"li   
                        getobj(inputid+"li"+j).innerHTML="clear";   
                        getobj(inputid+"mydiv").innerHTML +="<style type='text/css'>#"+inputid+"mydiv ul {padding:0px;margin:0;}#"+inputid+"mydiv ul li{list-style-type:none;padding:5px;margin:0;float:left;CURSOR: pointer;}</style>"  
                        for (var i=0;i<=j;i++){   
                                        getobj(inputid+"li"+i).onmouseover=function(){this.style.background="#eee";clearTimeout(timer)}   
                                        getobj(inputid+"li"+i).onmouseout=function(){this.style.background="#fff"}   
                        }   
                }   
                var newdiv=getobj(inputid+"mydiv")   
                newdiv.onclick=function(){hiddiv(event,inputid);}   
                newdiv.onmouseout=function(){Mout(this)}   
                newdiv.onmouseover=function(){clearTimeout(timer)}   
                getobj(inputid).onmouseout=function(){Mout(newdiv)}   
                newdiv.style.display="block";   
                swtemp=1;   
                objtemp=inputid;   
}   
var timer   
function Mout(o){   
timer=setTimeout(function(){o.style.display="none";},300)   
                swtemp=0;   
}   
function hiddiv(e,inputid){   
    e=e||window.event;   
    ev=e.target||e.srcElement;   
    v=ev.innerText||ev.textContent;   
    if (v!="clear")getobj(inputid).value=v;else getobj(inputid).value=""  
                getobj(inputid+"mydiv").style.display="none";   
}   
</script>   
</head>   
<body>   
<br>   
<br>   
<br>   
<br>   
<input id="mytext" type="text"onclick="showdiv(this.id,this.list)" list="文本框,弹出层,值赋"/>   
<br>   
<br>   
<script>   
var list="文本框2,弹出层2,值赋2,文本框2-1,弹出层2-1,值赋2-1"  
</script>   
<input id="mytext2" type="text" onClick="showdiv(this.id,list)"/>   
<input type="hidden" value="点击,弹出,显示,消失,实现" id="list">   
<input id="mytext3" type="text" onMouseOver="showdiv(this.id,getobj('list').value)"/>   
</body>   
</html>
0 0