• jQueryInAction Reading Note 1.


    I becoming love jQuery just because I only know javascript before. (^.^)

    document.getElementById("someId")

      ↓

    $("#someId")

    Seems everything is getting more easier.

    这是最吸引我的一个jQuery语句:

    $("table tr:nth-child(even)").addClass("striped");

    jQuery包装器(wrapper maybe)

    jQuery归根到底还是用来对html元素进行操作的,所以首先要选择html元素,$()被我认为就是包装器,它能够把里面的字符串解析成类似于css样式一样的东西,然后去html页面中选择出来它们。这是第一步,我认为也是最重要的一步。

    选择器(selector)

    p a, 用来指定段落中的链接。$("p a")就会把它们选择出来。

    jQuery vs. javascript

    $("p a") 返回的是一个包装器或者称为包装集,里面包含了被选中的元素, $("p a")[0]返回的对象已经不再是一个jQuery的对象了(我就是这么理解的),而是一个javascript的对象,这个时候jQuery的方法对它就不起作用了,相对应的javascript的方法就好使了。

    几个接触到的选择器:

    $("p:even"), $("p:odd") 分别选中html中序数为偶数的和为奇数的段落。

    $("tr:nth-child(1)") 选中所有作为第一个子节点的tr。貌似就是所有table的第一行吧,恩,是因为th也是tr的子节点,跟td一样。

    $("tr > td") 选中所有作为tr子节点的td,貌似是废话哩。例子太废了,$("div span")这个比前头的要强一点 (-.-)

    对下面的javascript小猿比较熟悉,小猿也貌似记得一个页面中写多个这东西是没有意义的。

    window.onload = function(){...}

    也就是说,它有局限性,求助于jQuery大大吧。

    还是包装集:

    $(document).ready(function(){...})

    $(document)把DOM进行包装,返回一个包装集。

    .ready()小猿目前认为它是jQuery的一个方法,也就是等待DOM加载完毕。

    function(){...}是不是所谓的回调函数呢?

    其实window.onload结束的标志是当整个DOM,以及资源(外部文件,图片等)加载完成之后才会触发事件,这是很令人烦恼的,据说可能会有人因为页面加载太慢而关掉了页面去找其它的页面了,我就是,除非我打开的是google搜索(欲哭无泪啊,google一禁令小猿何处去找资料啊???)

    等等,jQuery又说了些令我吃惊的话:

    $(function(){...})

    完成了上面的任务,丝毫不差,好吧,目前我还是无法理解的。因为我真的不知道把一个函数包装起来干什么!

    $(function(){
        $("<p>This is something created by jQuery</p>").insertAffter("#followme");
    })

    能看懂,但是这个insertAffter("#followme")确实比较新颖,小猿要记住它。

    扩展jQuery。

    jQuery虽好,但是不万能,万能即无能,,,,哎,,,,这是干啥啊,神神叨叨的。

    $.fn.disable = function(){
        return this.each(function(){
            if (typeof this.disable != "undefined") this.disable = true;
        });
    };

    有几个疑点,但是先不管:

    $.fn 这货是啥啊?我知道他类似于或者等价于 jQuery.fn,那fn有时啥啊???

    里面三个this关键字,第一个跟后两个不相同,后两个指的是同一个对象。

    咱也不知道第一个this是怎么传递过来的,貌似是谁调用这个disable()方法也,谁就是这个this(应该是一个包装集)。

    返回值,each()函数的返回值,应该也是一个包装集,所以这就是jQuery链得以实现的原因吧。

  • 相关阅读:
    数组循环三种方式
    PHP上传RAR压缩包并解压目录
    把session写到数据库中
    PHP错误处理方式
    PHP异常处理机制
    css文字的强制换行和超出宽度省略变成点儿
    Mybatis之@Provider的使用方式
    rsync+ssh 枯木
    RHEL6下squid代理之正向代理 枯木
    MySQL体系结构 枯木
  • 原文地址:https://www.cnblogs.com/voctrals/p/3782897.html
Copyright © 2020-2023  润新知