`
liyonghui160com
  • 浏览: 775941 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

javascript与jQuery设置取得div绝对位置

阅读更多

 

今天的一个小应用,需要像日历控件的效果那样,显示对省份的选择。弹出层,同时将显示的值展示在文本框中,或者其他的显示层中。简单代码实现,大家可以在此基础上不断扩展。

代码供大家参考。

 

 

<html>
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>javascript与jQuery设置取得div绝对位置一个小应用(像日历控件一样,在编辑框下面显示一个层)</title>
    <script type="text/javascript" src="js/jquery.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>
        <tr>
            <td>省份</td>
            <td><a id="aOne" onclick="showProvince(this);"">点击查看</a></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>

 

 

分享到:
评论

相关推荐

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

    实例如下: &lt;!...&lt;... &lt;head&gt;...javascript与jQuery设置取得div绝对位置一个小应用(像日历控件一样,在编辑框下面显示一个层)&lt;/title&gt; &lt;script type="text/javascript" src="jquery-1.3.

    jQuery超强div固定位置布局特效插件

    3. **设置定位样式**:如果div的位置超出预设阈值,插件将修改div的CSS属性,例如将其position设置为fixed,top或left设置为相对于屏幕的固定值,确保div始终保持在屏幕上特定位置。 4. **适应窗口大小变化**:同时...

    Jquery Sortable实现div拖动排序效果

    这里,我们设置了几个关键的配置选项,例如`revert`使得拖动结束后元素回到原位置,`cursor`改变了鼠标指针的样式,以及`tolerance`决定了元素何时可以交换位置。 为了保存排序后的顺序,可以监听Sortable的`stop`...

    JavaScript和JQuery获取DIV值的方法示例

    文章开始部分提到了本文内容的目的,是为了对比分析JavaScript与jQuery在获取页面div元素值时的不同实现技巧。文中使用了HTML和JavaScript代码,并通过按钮点击事件,向用户展示了使用JavaScript和JQuery如何获取和...

    JavaScript与JQuery实现全选例子

    这里,我们利用了jQuery提供的`.prop()`方法来获取和设置复选框的`checked`属性值,同时利用`.children()`方法来定位特定的子元素。 ### 三、对比分析 #### 3.1 语法差异 从语法角度来看,jQuery 提供了一种更加...

    Jquery弹出DIV

    **jQuery弹出DIV详解** 在Web开发中,jQuery是一个非常流行的JavaScript库,它极大地简化了DOM操作、事件处理以及动画效果。"Jquery弹出DIV"是指利用jQuery来实现一个可交互的模态对话框(通常称为弹出窗口或浮层)...

    jQuery 局部div刷新和全局刷新方法总结

    jQuery作为一个广泛使用的JavaScript库,提供了简单便捷的方法来实现这两种刷新。接下来,我们将详细介绍如何使用jQuery进行局部div刷新和全局刷新。 局部div刷新主要指的是只刷新页面中某个特定的div元素区域。这...

    JQuery 动态生成DIV、Table并处理数据

    标题 "JQuery 动态生成DIV、Table并处理数据" 涉及的是使用JavaScript库JQuery来动态创建HTML元素,特别是DIV和Table,并且处理其中的数据。这在Web开发中非常常见,尤其是在构建交互式用户界面时。下面将详细阐述这...

    jQuery插件实现DIV浮动在页面固定位置中

    标题中的“jQuery插件实现DIV浮动在页面固定位置中”是指使用JavaScript库jQuery来创建一个功能,使得HTML中的&lt;div&gt;元素能保持在用户滚动页面时的特定位置,通常这种效果被称为“固定定位”或者“吸附效果”。...

    jquery.实现div悬浮

    接着,我们需要通过CSS来设置div的基本样式,包括宽高、背景色、边距等,同时为了初始状态下让div位于期望的位置,可以设置`position: absolute`或`position: fixed`。例如: ```css #floatingDiv { width: 200px;...

    jquery div拖动排序效果代码.zip

    本教程将详细讲解如何利用jQuery实现一个div元素的拖动排序效果,结合CSS样式,创建出一款从左到右慢慢展开且可自由拖动排序的特效。 首先,我们需要在HTML中设置好基础结构。创建一系列的div元素,每个div代表一个...

    JQuery-DIV弹窗

    在网页设计中,jQuery是一个非常流行的JavaScript库,它极大地简化了JavaScript的使用,尤其是在处理DOM操作、事件处理和动画效果等方面。"JQuery-DIV弹窗"是指利用jQuery实现的一种弹出窗口效果,通常用于显示通知...

    jquery实现动态改变div宽度和高度

    这两个方法都允许我们获取或设置元素的宽度和高度。当我们传递一个参数给这两个方法时,它会设置元素的尺寸;而如果没有传递参数,它则会返回当前元素的宽度或高度。 在文章中提供的HTML代码中,我们定义了一个div...

    jQuery实现将div的滚动条滚动到指定位置

    需要注意的是,`scrollTop()`方法用于获取或设置元素的垂直滚动位置。在上述代码中,`scrollArea.scrollTop()`返回当前的滚动位置,`+ targetOffset`则是我们想要滚动到的新位置。你可以根据实际需求调整`...

    jquery 弹出 div 模式窗口

    例如,对于一个Div模态窗口,可以这样设置: ```javascript $('.popup').magnificPopup({ type: 'inline', // 这里指定类型为'inline',表示弹出的是页面内的元素 preloader: false, // 是否显示加载指示器 ...

    jQuery可拖拽DIV页面

    8. **与其他jQuery UI组件结合**:除了Draggable,还可以结合Resizable、Sortable等jQuery UI组件,创建更复杂的交互效果,比如可调整大小的div或者可排序的列表项。 9. **调试和测试**:在开发过程中,使用开发者...

    JQUERY弹出模式DIV

    在jQuery中,可以使用`$.getJSON()`方法从服务器获取JSON数据,然后使用`.parseJSON()`(jQuery 1.4.1 及以上版本)或`JSON.parse()`(原生JavaScript方法,无需依赖jQuery)将JSON字符串转换为JavaScript对象。...

    绝对实用的DIV+CSS+JQUERY模板

    在“绝对实用的DIV+CSS+JQUERY模板”中,jQuery可能被用来实现诸如下拉菜单、滑动效果、图片轮播、表单验证等各种动态功能,提升用户体验。 【DIV】:在HTML中,`&lt;div&gt;`是一个通用的容器标签,用于组合其他HTML元素...

    jQuery鼠标上下拖动div排序代码

    《jQuery实现鼠标拖动div排序技术详解》 在网页开发中,用户交互体验是至关重要的。其中,元素的可拖动排序功能可以让用户更加直观地调整界面布局,提高使用便捷性。本文将深入探讨如何利用jQuery库实现鼠标上下...

    Jquery弹出div层窗口以及div屏幕居中,背景滤镜效果,div拖拽效果

    **jQuery弹出div层窗口** 在网页开发中,jQuery提供了便捷的方式来创建动态的、可交互的弹出div层窗口。这种技术通常用于显示警告、消息、表单或任何需要用户注意的内容。创建一个弹出div层窗口的关键在于利用...

Global site tag (gtag.js) - Google Analytics