html 输入框的位置,JavaScript和jQuery获取input框的绝对位置实现方法

这篇博客介绍了如何利用JavaScript和jQuery获取DOM元素的绝对位置,并以此实现一个类似日历控件的功能。通过定义全局变量和相关函数,当输入框获得焦点时,会在其下方显示一个层(divProvince),并动态调整位置以保持在编辑框下方。点击层中的选项,会将选择的省份值填充到对应的输入框中,并隐藏该层。
摘要由CSDN通过智能技术生成
javascript与jQuery设置取得div绝对位置一个小应用(像日历控件一样,在编辑框下面显示一个层)

//全局变量,获得焦点的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();

});

});

});

省份
省份

北京

上海

天津

重庆

安徽

福建

甘肃

广东

广西

贵州

海南

河北

河南

黑龙江

湖北

湖南

吉林

江苏

江西

辽宁

内蒙古

宁夏

青海

山东

山西

陕西

四川

西藏

新.疆

云南

浙江

香港

澳门

台湾

取消

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值