现在的位置: 首页 > 综合 > 正文

javascript与jQuery设置取得div绝对位置一个小应用(像日历控件一样,在编辑框下面显示一个层)

2013年10月31日 ⁄ 综合 ⁄ 共 4254字 ⁄ 字号 评论关闭

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    
<title>javascript与jQuery设置取得div绝对位置一个小应用(像日历控件一样,在编辑框下面显示一个层)</title>
    
<script type="text/javascript" src="jquery-1.3.2.min.js"></script>
    
<script type="text/javascript">
        
//全局变量,获得焦点的ID
        var onFocusID = "";
        
//取得绝对位置
        function absPos(node){
            
var x=y=0;
            
do{
                x
+=node.offsetLeft;
                y
+=node.offsetTop;
            }
while(node=node.offsetParent);   
            
return{   
                
'x':x,   
                
'y':y   
            };         
        }
        
//显示省份
        function showProvince(obj){
            
//javascript的方法
            //jQuery("#divProvince").css("left",absPos(obj).x);
            //jQuery("#divProvince").css("top",absPos(obj).y + jQuery(obj).outerHeight());
            
            
//jQuery的方法
            jQuery("#divProvince").css("left",jQuery(obj).offset().left);
            jQuery(
"#divProvince").css("top",jQuery(obj).offset().top + jQuery(obj).outerHeight());
            
            jQuery(
"#divProvince").show();
            
            onFocusID 
= obj.id;
        }
        
//隐藏省份
        function hideProvince(){
            jQuery(
"#divProvince").hide();
        }
        
//
        $(function(){
            $(
"#divProvince input").each(function(){
                $(
this).click(function(){
                    
//this.checked="checked";
                    //alert(jQuery(this).attr("value"));
                    if(onFocusID != ""){
                        $(
"#"+onFocusID).val($(this).val());
                    }
                    $(
"#divProvince").hide();
                });
            });
        });
    
</script>
</head>
<body>
    
<table>
        
<tr>
            
<td>省份</td>
            
<td><input id="txtOne" type="text" onfocus="showProvince(this);" /></td>
        
</tr>
        
<tr>
            
<td>省份</td>
            
<td><input id="txtTwo" type="text" onfocus="showProvince(this);" /></td>
        
</tr>
    
</table>
    
<div id="divProvince" style="display:none; position:absolute;width:260px;background-color:#BFEBEE; border:1px solid #BEC0BF;padding:5px;font-size:12px;">
        
<input id="Radio1" type="radio" value="北京" />北京
        
<input id="Radio2" type="radio" value="上海" />上海
        
<input id="Radio3" type="radio" value="天津" />天津
        
<input id="Radio4" type="radio" value="重庆" />重庆
        
<input id="Radio5" type="radio" value="安徽" />安徽
        
<input id="Radio6" type="radio" value="福建" />福建
        
<input id="Radio7" type="radio" value="甘肃" />甘肃
        
<input id="Radio8" type="radio" value="广东" />广东
        
<input id="Radio9" type="radio" value="广西" />广西
        
<input id="Radio10" type="radio" value="贵州" />贵州
        
<input id="Radio11" type="radio" value="海南" />海南
        
<input id="Radio12" type="radio" value="河北" />河北
        
<input id="Radio13" type="radio" value="河南" />河南
        
<input id="Radio14" type="radio" value="黑龙江" />黑龙江
        
<input id="Radio15" type="radio" value="湖北" />湖北
        
<input id="Radio16" type="radio" value="湖南" />湖南
        
<input id="Radio17" type="radio" value="吉林" />吉林
        
<input id="Radio18" type="radio" value="江苏" />江苏
        
<input id="Radio19" type="radio" value="江西" />江西
        
<input id="Radio20" type="radio" value="辽宁" />辽宁
        
<input id="Radio21" type="radio" value="内蒙古" />内蒙古
        
<input id="Radio22" type="radio" value="宁夏" />宁夏
        
<input id="Radio23" type="radio" value="青海" />青海
        
<input id="Radio24" type="radio" value="山东" />山东
        
<input id="Radio25" type="radio" value="山西" />山西
        
<input id="Radio26" type="radio" value="陕西" />陕西
        
<input id="Radio27" type="radio" value="四川" />四川
        
<input id="Radio28" type="radio" value="西藏" />西藏
        
<input id="Radio29" type="radio" value="新.疆" />新.疆
        
<input id="Radio30" type="radio" value="云南" />云南
        
<input id="Radio31" type="radio" value="浙江" />浙江
        
<input id="Radio32" type="radio" value="香港" />香港
        
<input id="Radio33" type="radio" value="澳门" />澳门
        
<input id="Radio34" type="radio" value="台湾" />台湾
          
<span style="cursor:pointer;color:red;" onclick="hideProvince();">取消</span>
    
</div>
</body>
</html>

抱歉!评论已关闭.