`
no_bao
  • 浏览: 315290 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

使用JQuery获取对象的几种方式,值得收藏!

阅读更多
1、先讲讲JQuery的概念

JQuery首先是由一个 America 的叫什么 John Resig的人创建的,后来又很多的JS高手也加入了这个团队。其实 JQuery是一个JavaScript的类库,这个类库集合了很多功能方法,利用类库你可以用简单的一些代码实现一些复杂的JS效果。
2、JQuery实现了 代码的分离
不用再网页中加入如:onclick之类的事件来调用函数了,直接引入JQuery类库和自己编写的JQuery代码就可以了;
如:
$(function(){
   $("Element").click{function(){
          alert("点击我哦!");
     }
   }
});
上面的代码中 只要定义了Element 这个元素  后面的click是动作

alert("点击我哦!");这个是要执行的代码,当然你可以有很多的操作在这个函数中;
这里面的$这个号代表JQuery的意思 ,就是引用类库了。。。我是这么理解的;
3、JQuery的核心的一些方法
each(callback) '就像循环
$("Element").length; ‘元素的个数,是个属性
$("Element").size(); ’也是元素的个数,不过带括号是个方法
$("Element").get(); ‘某个元素在页面中的集合,以数组的形式存储
$("Element").get(index); ’功能和上面的相同,index表示第几个元素,数组的下标
$("Element").get().reverse(); ‘把得到的数组方向
$("Element1").index($("Element2")); ’元素2在元素1中的索引值是。。。
4、基本对象获取(注意这里获取的都是Jquery对象而不是Dom对象哦,但是他俩是可以转换滴)
$("*")  ‘表示获取所有对象   但是我至今没这样用过
$("#XXX") ’获得 id=XXX 的元素对象(id可以是标签的id或CSS样式id) 常用

$("input[name='username']")   获得input标签中name='userName'的元素对象 常用

$(".abc") ' 获得样式class的名字是.abc的元素对象  常用
$("div") ' 标签选择器 选择所有的div元素  常用
$("#a,.b,span") '表示获得ID是a的元素和使用了类样式b的元素以及所有的span元素
$("#a .b p") 'ID号是a的并且使用了 b样式的 所有的p元素

示例:

<html>
    <head>
        <title>jquery测试</title>
        <meta http-equiv="content-type" content="text/html; charset=UTF-8">
        <script type="text/javascript" src="../js/jquery-1.4.1.js"></script>
        <style type="text/css">
        .checkCss{
            color:blue;
        }
        .redioCss{
            color:red;
        }
        </style>
        <script type="text/javascript">
            $(function(){
                // $("#XXX") 获得id=XXX的所有Jquery对象
                $("#subt").click(function(){
                    // $("XXX") 获得XXX标签名的所有Jquery对象
                    alert("input 标签的对象个数为:"+$("input").length);
                    // $("XXX[name='YYY']") 获得XXX标签名下name='YYY'的所有Jquery对象
                    // val()获得属性值
                    alert("name='userName'的输入框内容为:"+$("input[name='userName']").val());
                    // 注意获得value值的第二种方式
                    alert("name='note'的输入框内容为:"+$("input[name='note']").attr("value"));
                    alert("下拉菜单被选中项的文本为:"+$("#sex option:selected").text());
                    alert("下拉菜单被选中项的值为:"+$("#sex").val());
                    alert("复选框选中的个数为:"+$("input[name='check']:checked").length);
                    if($("input[name='check']:checked").length>0){
                        var allCheckValue="";
                        var allCheckText="";
                        $("input[name='check']:checked").each(function(){
                            allCheckValue+=$(this).val()+" ";
                            allCheckText+=$(this).parent(".checkCss").text()+" ";
                        });
                        alert("复选框选中的文本为:"+allCheckText+" 值为:"+allCheckValue);
                    }
                    if($("input[name='status']:checked").length>0){
                        alert("单选框选中的文本为:"+$("input[name='status']:checked").parent(".redioCss").text()+" 值为:"+$("input[name='status']:checked").val());
                    }
                });
            });
            </script>
    </head>

    <body>
        姓名:<input type="text" name="userName" width="250"><br>
        性别:<select id="sex" name="userSex" style="width: 155">
                <option value="1">男</option>
                <option value="2">女</option>
                <option value="3">不男不女</option>
             </select><br>
        爱好:<span class="checkCss"><input type="checkbox" name="check" value="1">旅游</span>
             <span class="checkCss"><input type="checkbox" name="check" value="2">音乐</span><br>
             &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
             <span class="checkCss"><input type="checkbox" name="check" value="3">体育</span>
             <span class="checkCss"><input type="checkbox" name="check" value="4">文学</span><br>
        状态:<span class="redioCss"><input type="radio" name="status" value="1">在职</span>
             <span class="redioCss"><input type="radio" name="status" value="2">离职</span><br>
        简介:<input type="text" name="note" width="250"><br>
        <input type="button" value="提交" id="subt"><br>
    </body>
</html>

5、层级元素获取
$("Element1 Element2 Element3 ....")  '前面父级 后面是子集
$("div > p") '获取div下面的所有的 p元素
$("div + p") 'div元素后面的第一个 p元素
$("div ~ p") 'div后面的所有的 p元素
6、简单对象获取
$("Element:first") 'HTML页面中某类元素的第一个元素
$("Element:last") 'HTML页面中某类元素的最后一个元素
$("Element:not(selector)") '去除所有与给定选择器匹配的元素,如:$("input:not(:checked)") 表示选择所有没有选中的复选框
$("Element:even") '获得偶数行
$("Element:odd“)'获得奇数行
$("Element:eq(index)")  '取得一个给定的索引值
$("Element:gt(index)")  '取得给定索引值的元素  之后的所有元素
$("Element:lt(index)")  '取得给定索引值的元素  之前的所有元素
。。。
7、内容对象的获取和对象可见性
$("Element:contains(text)") '元素中是否包含text文本内容
$('Element:empty") '获得元素不包含子元素或文本的
$("Element:partnt") '获得元素包含子元素或文本的
$("Element:has(selector)") ‘是否包含某个元素, 如:$("p:has(span)")表示所有包含span元素的p元素
$("Element:hidden") '选择所有可见元素
$("Element:visible") '选择所有不可见元素
8、其他对象获取方法
$("Element[id]") '所有带有ID属性的元素
$("Element[attribute = youlika ]" '获得所有某个属性为youlika的元素
$("Element[attribute != youlika ]" '获得所有某个属性为不是youlika的元素
$("Element[attribute ^= youlika ]" '获得所有某个属性为不是youlika的开头的元素
$("Element[attribute $= youlika ]" '获得所有某个属性为不是youlika的结尾的元素
$("Element[attribute *= youlika ]" '获得所有某个属性包含youlika的开头的元素
$("Element[selector1][selector2][....]") ’符合属性选择器,比如$("input[id][name][value=youlika ]")表示获得带有ID、Name以及value是youlika 的input元素。
9、子元素的获取
$("Element:nth-child(index)") '选择父级下面的第n个元素
$("Element:nth-child(even)") '选择父级下面的偶数
$("Element:nth-child(odd)") '选择父级下面的奇数
$("Element:nth-child(3n+1)") '表达式
$("Element:first-child") '选择父级下面的第一个子元素
$("Element:last-child") '选择父级下面的最后一个子元素
$("Element:only-child") '匹配父级下的唯一的一个子级元素,例如dt在dl列表中唯一,那么将选择dt
10、表单对象获取
$(:input)//查找所有的Input元素,当然也包括下拉列表,文本域,单选框,复选框等。
$(:text)//匹配所有的单行文本框
$(:password)//匹配所有的密码框
$(:radio)//匹配所有的单选按钮
$(:checkbox)//匹配所有的复选框
$(:submit)//匹配所有的提交按钮
$(:image)//匹配所有的图像域,例如<input type="image" />
$(:reset)//匹配所有的重置按钮
$(:button)//匹配所有的按钮
$(:file)//匹配所有的文件上传域
$(:hidden)//匹配所有的不可见元素或者type为hidden的元素
$(:enabled)//匹配所有可用的input元素,比如radio:enabled表示匹配所有可用的单选按钮
$(:disabled)//匹配所有的不可用input元素,作用与上相反
$(:checked)//匹配所有选中的复选框元素
$(:selected)//匹配所有的下拉列表
11、元素属性的设置与移除
$("Element").attr(name) '取得第一个匹配的属性值,比如$("img").attr("src")
$("Element".attr(key,value)") '某一个元素设置属性
$("Element".attr({key:value,key1:value,....})) ‘为某个元素一次性设置多个属性
$("Element").attr(key,function) '为所有匹配的元素设置一个计算的属性值。
$("Element").removeAttr(name)//移除某一个属性
分享到:
评论
1 楼 forrest_lv 2012-09-27  
总结 很实用、常用、全面,感谢!

相关推荐

    jQuery技巧,比较经典的几种用法总结。

    首先,jQuery 提供了一种简洁的方式来引用页面上的元素。你可以通过ID、类、元素名称或DOM层级关系,甚至XPath条件来选择元素。例如,`$("#msg")`会选取ID为'msg'的元素,`$(".myClass")`会选取所有类名为'myClass'...

    jQuery获取this当前对象子元素对象的方法

    总结一下,jQuery中获取`this`当前对象子元素对象的方法主要有两种:一是使用jQuery选择器,二是结合`this`和`children()`或`find()`方法。在实际应用中,根据场景选择合适的方法,可以更高效地操作DOM元素。希望这...

    jQuery权威指南-源代码

    4.2.2 ready()方法的几种相同写法/86 4.3 绑定事件/86 4.4 切换事件/90 4.4.1 hover()方法/90 4.4.2 toggle()方法/93 4.5 移除事件/94 4.6 其他事件/96 4.6.1 方法one() /97 4.6.2 方法trigger () /98 4.7...

    jquery-lightbox

    在实际应用中,使用jQuery Lightbox通常涉及以下几个步骤: 1. **引入jQuery库**:首先确保网页已经引用了jQuery库,因为jQuery Lightbox依赖于它。 2. **引入jQuery Lightbox脚本和样式**:将jQuery Lightbox的...

    jquery学习小技巧

    这可以通过以下几种方式实现: - **使用 `eq(index)`**:例如,`$('div').eq(2)` 将返回第三个 `&lt;div&gt;` 元素的 jQuery 对象。 - **使用 `get(index)`**:例如,`$('div').get(2)` 将返回第三个 `&lt;div&gt;` 元素的 DOM ...

    jquery 源码分析

    jQuery的设计初衷是为了简化Web开发中的DOM操作,提供一种更为便捷的方式来处理HTML文档。其设计理念主要体现在以下几个方面: 1. **DOM操作简化**:通过简洁的语法实现对DOM元素的选择、操作和事件处理。 2. **...

    jQuery 技巧收集

    要在jQuery对象和DOM对象之间转换,可以使用`$(domElement)`将DOM对象转化为jQuery对象,而从jQuery对象获取DOM对象通常需要通过索引,例如`$("#msg")[0]`。DOM对象可以使用原生JavaScript的DOM方法,而jQuery对象...

    jQuery 核心函数以及jQuery对象

    首先,jQuery的核心函数主要包含以下几种: 1. jQuery(elements) 这个函数将DOM元素转化为jQuery对象。通过传入一个或多个DOM元素,可以得到一个能够使用jQuery方法的jQuery对象。它不仅支持DOM元素,还支持XML文...

    jquery.serializeJSON插件

    使用`jQuery.serializeJSON`插件的步骤通常包括以下几步: 1. **引入依赖**:首先,你需要在项目中引入jQuery库,然后引入`jquery.serializeJSON.js`插件文件。如果使用的是`jquery.serializeJSON-master`压缩包,...

    jQuery技巧大放送

    首先,jQuery 提供了一种简便的方式来引用页面上的元素。通过`$()`函数,我们可以选择元素,无论它们是通过ID、类名、元素类型还是更复杂的DOM或XPath条件。例如,`$("#msg")`选择ID为`msg`的元素,`$(".myClass")`...

    jQuery对象的链式操作用法分析

    jQuery对象的链式操作是一种非常高效的编程方式,它可以让开发者将多个jQuery方法连续调用,使代码更加简洁、易于理解。这种操作方法不仅减少代码量,还能够提升执行效率,因为在链式调用中,多个方法共享同一个...

    jQueryAjax用户登录

    jQuery的Ajax方法包括`$.ajax()`, `$.get()`, `$.post()`等,它们简化了原生XMLHttpRequest对象的使用。 在jQuery Ajax用户登录中,通常会包含以下几个步骤: 1. **事件监听**:使用`$(document).ready()`确保页面...

    Jquery学习 整理成Word 改正了原文中的错误

    将DOM元素转换为Jquery对象通常可以通过以下几种方式: - `var a = $("#cid");` - `var b = $("&lt;p&gt;hello&lt;/p&gt;");` - `var c = document.createElement("table"); var tb = $(c);` 一旦获得了Jquery对象,便可以使用...

    jquery上传插件.rar

    3. 使用Ajax异步请求,将FormData对象通过POST方式发送到指定的服务器端处理程序。 4. 服务器处理文件,返回响应信息。 5. 插件接收到响应后,更新界面状态,如显示成功信息或错误提示。 四、核心API与事件 在使用...

    jquery 取子节点及当前节点属性值的方法

    首先,我们来探讨如何使用jQuery获取子节点。在jQuery中,选择器是选择页面元素的一种方式,它非常强大且易于使用。要选取子节点,我们通常会使用子代选择器(例如 `$('parent &gt; child')`)或后代选择器(例如 `$('...

    jQuery学习笔记之入门

    对于初次接触jQuery的开发者而言,其目的在于提供一种更为简洁和高效的编码方式。下面详细解释从文件中提取的知识点。 首先,了解什么是jQuery是初学者的首要任务。jQuery可以被看作是JavaScript的一个框架,它封装...

    jQuery使用each遍历循环的方法

    先获取某个集合对象,然后使用$.each()方法进行遍历也是一种常见的做法。这种方法可以提供更多的灵活性,尤其是在处理复杂数据结构时。 ```javascript var $divs = $('div'); // 先获取div元素集合 $.each($...

    使用jQuery的attr方法来修改onclick值

    现代JavaScript和jQuery提供了更安全的方式来处理类似的需求,例如使用Function构造函数代替eval。另外,还可以使用事件委托或者直接在jQuery中使用click方法来绑定事件处理器,避免直接操作onclick属性。 文章中...

    jQuery实现跟随鼠标运动图层效果的方法

    这段代码中使用了jQuery库来监听document对象上的mousemove事件,当事件发生时,也就是鼠标移动时,会触发一个函数。在这个函数内部,使用了e.pageX和e.pageY属性来获取当前鼠标的位置坐标。这两个属性分别返回鼠标...

Global site tag (gtag.js) - Google Analytics