jquery加载完成后执行-jQuery 中 $() 函数的用法

点击里面的“天马营”,加入我们,快速成长吧~

在“简介”讨论中,您被问及 jQuery 中 $() 的用法。 你会不会有点困惑? 虽然这种问法类似于孔乙己问“茴香豆有多少种写法?”,但还是趁这个机会整理一下知识,学习一下!

jQuery一定是现在后端开发中不可缺少的组件。 它提供了DOM对象的封装、统一的storm机制以及一系列的实用函数。 讨论过程中,被问到$()在jQuery中的几种用法,我有点困惑,没有一一回答。 虽然这种问法和孔乙己问“茴香豆有多少种写法?”颇为相似,但还是趁这个机会整理一下知识,趁机学习一下!

首先,我们需要介绍一下jQuery。 如果您还没有听说过 jQuery,请转到其他文章或在您的网站中介绍它:


jQuery 的 $() 函数文档在这里: jQuery 的 $() 函数的用法包括:

DOM选择

最常用的是通过选择器进行选择:

jQuery( selector [, context ] )

你看见了吗? 第二个可选参数可以指定上下文,其类型可以是 DOM 对象或 jQuery 对象。 例如查找ul下所有li:

$ul = $('ul');
$li = $.('li', $ul);

相当于:

$li = $ul.find('li');

不仅选择器jquery加载完成后执行,还可以使用 DOM 对象、DOM 对象字段、jQuery 对象,甚至普通对象作为参数。 它们将被包装为 jQuery 对象。

DOM创建

用jQuery创建DOM也是一个常见的操作,比如在ul下创建一个li:

// 方法声明
jQuery( html [, ownerDocument ] )
// 例子
$('
  • ').appendTo($ul);
  • 注意第二个可选参数,默认值是jQuery当前加载的Document类型。如果要在IFrame中创建元素,则必须指定Document,因为jQuery使用window.document.createElement来创建DOM元素。 这里需要知道新元素所属的文档对象。 例如:

    $("

    hello iframe

    ", $("#myiframe").prop("contentWindow").document)

    创建 DOM 元素时,您不仅可以指定文档,还可以指定元素属性:

    // 方法声明
    jQuery( html, attributes )
    // 例子
    $('', {
        href: 'http://jquery.com'
    });
    // 当然你笨笨地写也是可以的:
    $( "" );

    更有趣的是jquery加载完成后执行,从jQuery1.8开始,除了创建元素时指定属性外,全部都是$.fn。 可以指定方法,例如:

    $( "
    ", { "class": "test", text: "Click me!", click: function() { $( this ).toggleClass( "test" ); } }).appendTo( "body" );

    DOM加载完成

    一般情况下,JavaScript需要在DOM加载后执行,否则DOM操作可能会失败。 jQuery 提供了一种便捷的方法来窃听 DOM 加载完成情况:

    // 方法声明
    jQuery( callback )
    // 例子
    $(function(){
        // DOM载入后执行
    });

    $(callback) 与 $(document).ready(callback) 完全相同。 两者的返回值都是一个包含 document 的 jQuery 对象。 所以,两者的区别在于,前者可以写成链式:$(document).ready(x).ready(x)....不过,蛋。

    这是 $(document).ready 和 $(window).load 之间的区别:

    还发表于: