jQuery中$()函数的7种用法汇总

前言

jQuery对象是一个类数组的对象,含有连续的整形属性以及一系列的jQuery方法。它把所有的操作都包装在一个jQuery()函数中,形成了统一(也是惟一)的操作入口。
其中我们用的非常频繁的一个函数是$()或者说是jQuery(),当我们调用他的时候会根据传入的参数的不同而达到不同的效果。

接下来会一一说一下这7中用法,欢迎大家指正其中不正确的地方。

简要的说是:接收一个css选择器表达式(selector)和可选的选择器上下文(context),返回一个包含了匹配的DOM元素的jQuery对象。

默认情况下,对匹配元素的查找都是从根元素ducument对象开始,也就是说查找范围是整棵文档树。但是如果给定了上下文context,则在指定上下文中查找

html

  <span>body span</span>
    <span>body span</span>
    <span>body span</span>
    <div class="wrap">
        <span>wrap span</span>
        <span>wrap span</span>
        <span>wrap span</span>
    </div>

js

  $(‘span‘).css(‘background-color‘,‘red‘);//所有的span都会变红
    $(‘span‘,‘.wrap‘).css(‘background-color‘,‘red‘);//只有.wrap中的span会变红

2 jQuery(html,ownerDocument) 、jQuery(html,props)

用所提供的html代码创建DOM元素

对于jQuery(html,ownerDocument),参数html可以是单标签或者是多层标签之间的嵌套。第二个参数用于创建新DOM元素的文档对象,如果不传入则默认为当前的文档对象。

 //单标签  两种方式都可以往body中插入div
    /*
     *   1  $(‘<div>‘).appendTo(‘body‘);
     *   2  $(‘<div></div>‘).appendTo(‘body‘);
     */
    // 多标签嵌套
     $(‘<div><span>dfsg</span></div>‘).appendTo(‘body‘);

另外:对于单标签,jQuery(html,props),props是一个包含属性和事件的普通的对象,用法如下。(该用法有待考证,请知道这一用法的童鞋告知一下,感激不尽)

 $(‘<div>我是div</div>‘,{
            title:‘我是新的div‘,
            click:function(){
                $(this).css(‘color‘,‘red‘);
                console.log(this);
            }
        }).appendTo(‘body‘);

3 jQuery(element or elementsArray)

如果传入一个DOM元素或者是DOM元素的数组,则把DOM元素封装到jQuery对象中并返回。

html

<ul>
        <li>1</li>
        <li>2</li>
        <li>3</li>
        <li>4</li>
        <li>5</li>
    </ul>

js

// 传入DOM元素
         $(‘li‘).each(function(index,ele){
                $(ele).on(‘click‘,function(){
                    $(this).css(‘background‘,‘red‘);//这里的DOM元素就是this
                })
        })

        //传入DOM数组
        var aLi=document.getElementsByTagName(‘li‘);
            aLi=[].slice.call(aLi);//集合转数组
            var $aLi=$(aLi);
            $aLi.html(‘我是jQuery对象‘);//所有的li的内容都变成‘我是jQuery对象‘

4 jQuery(object)

如果传入的是一个object对象,则把该对象封装到jQuery对象中并返回。

  var obj={name:‘谦龙‘};
    var $obj=$(obj);//封装成jQuery对象
    //绑定自定义事件
    $obj.on(‘say‘,function(){
        console.log(this.name)//输出谦龙
    });
    $obj.trigger(‘say‘);

5 jQuery(callback)

当传进去的参数是函数的时候,则在document对象上绑定一个ready事件监听函数,当DOM结构加载完成的时候执行

$(function(){

    })
    //以上代码和下面的效果是一样的
    $(document).ready(function(){
        ...//代码
    })

6 jQuery(jQuery object)

当传进去的参数是一个jQuery对象的时候,则创建该jQuery对象的一个副本并返回。副本与传入的jQuery对象引用完全相同的元素

  var aLi=$(‘li‘);
    var copyLi=$(aLi);//创建一个aLi的副本
    console.log(aLi);
    console.log(copyLi);
    console.log(copyLi===aLi);

7 jQuery()

如果不传入任何的参数,则返回一个空的jQuery对象,属性length为0

注意这个功能可以用来复用jQuery对象,例如可以创建一个空的jQuery对象,然后在需要的时候先手动修改其中的元素,然后在调用jQuery方法。从而避免重复创建jQuery对象。

相信很多人在刚接触前端或者中期时候总会遇到一些问题及瓶颈期,如学了一段时间没有方向感或者坚持不下去一个人学习枯燥乏味有问题也不知道怎么解决,对此我整理了一些资料 喜欢我的文章想与更多资深大牛一起讨论和学习的话 欢迎加入我的学习交流群907694362

  1. var obj={name:‘谦龙‘};
  2.  

    var $obj=$(obj);//封装成jQuery对象

  3.  

    //绑定自定义事件

  4.  

    $obj.on(‘say‘,function(){

  5.  

    console.log(this.name)//输出谦龙

  6.  

    });

  7.  

    $obj.trigger(‘say‘);

原文地址:https://www.cnblogs.com/xsd1/p/11963804.html

时间: 2024-11-08 10:50:09

jQuery中$()函数的7种用法汇总的相关文章

PHP易混淆函数的区别及用法汇总

本文实例分析了PHP易混淆函数的区别及用法.分享给大家供大家参考.具体分析如下: 1.echo和print的区别PHP中echo和print的功能基本相同(输出),但是两者之间还是有细微差别的.echo输出后没有返回值,但print有返回值,当其执行失败时返回flase.因此可以作为一个普通函数来使用,例如执行下面的代码后变量$r的值将为1. PHP代码: 复制代码代码如下: $r = print "Hello World"; 这意味着print可用在一些复杂的表达式中,而echo则不

函数的几种用法

1.通过函数名定义的用法: function showFun(){ }; showFun();//调用函数 2.通过变量的匿名函数的方法: var a=function(v){ console.log(1111);//1111 return v+1; } console.log(a(100)); //101 3.通过对象的方法调用函数 var objs={ a:100, show:function(){ return this.a; } }; console.log(objs.show());

getline()函数的两种用法

getline()函数的输入流对象可以是标准输入流对象cin,也可以是一个文件输入流对象fin; (1)输入流对象的成员函数(有三个参数,一般除非需要自己选定停止符,并不推荐使用): basic_istream<char>& istream::getline(char *str, streamsize num, char delim = '\n'); 这个函数是成员函数,所以必须通过对象调用.streamsize为signed integer type,其中: str为C 字符数组的首

jquery事件绑定的几种用法

常见的事件绑定的几种方法 主要有on(),bind(),live(),delegate(),随着版本的不断更新,live(),bind(),delegate()被相继弃用.live():1.7版本之后被弃用bind().delegate():3.0版本之后被弃用虽然在3.0之后的版本中有bind和delegate在,但在具体的实现上还是调用的on() bind: function( types, data, fn ) { return this.on( types, null, data, fn

关于jQuery回调函数的定义及用法实例

1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset=" utf-8"> 5 <meta name="author" content="http://www.jb51.net/" /> 6 <title>脚本之家</title> 7 <style type="text/css"> 8

JS函数的几种用法

1.正常使用: 2.第二种定义方法 3.匿名函数(页面加载执行的函数) 4.参数为元素的方法

PHP回调函数的几种用法

文章来源:http://www.cnitblog.com/CoffeeCat/archive/2009/04/21/56541.html 前言 最近在开发一个PHP系统,为了提高系统的扩展性,我想在系统中加入类似Javascript的事件处理机制,例如:我想在一篇新闻被添加以后,我想记录一下日志,用类似Javascript的代码,应该是这样写的: function fnCallBack( $news ){     //将$news的信息记录到日志中    writeLog( $news->get

jQuery index() 方法的两种用法

介绍: index() 方法返回指定元素相对于其他指定元素的 index 位置.index()的返回值是一个Number类型,从0开始计数. 语法: $(selector).index(element) 注释: selector可选.规定要获得 index 位置的元素.可以是 DOM 元素或 jQuery 选择器.   用法:     1.如果不传递任何参数给 .index() 方法,则返回值就是jQuery对象中第一个元素相对于它同辈元素的位置. 例子: html代码: <ul> <l

PHP易混淆函数的区别及用法汇总(函数和方法的区别)

1.echo和print的区别PHP中echo和print的功能基本相同(输出),但是两者之间还是有细微差别的.echo输出后没有返回值,但print有返回值,当其执行失败时返回flase.因此可以作为一个普通函数来使用,例如执行下面的代码后变量$r的值将为1. PHP代码: 复制代码代码如下:$r = print "Hello World"; 这意味着print可用在一些复杂的表达式中,而echo则不行.但是,因为echo语句不要求返回任何数值,所已在代码中echo语句的运行效率要略