前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >jquery常用函数及技巧(持续更新)

jquery常用函数及技巧(持续更新)

作者头像
空空云
发布2018-09-27 12:00:37
4850
发布2018-09-27 12:00:37
举报
文章被收录于专栏:大前端_Web

版权声明:本文为吴孔云博客原创文章,转载请注明出处并带上链接,谢谢。 https://cloud.tencent.com/developer/article/1347605

关于选择器

  • 尽量ID选择器。其背后机理其实是调用原生的document.getElementById()
  • 使用类选择器时不指定元素的类型。
  • 多级查找中,右边尽量指定得详细点而左边则尽量简单点
代码语言:javascript
复制
// 丑陋
$("div.data .gonzalez");

// 优化后
$(".data td.gonzalez");
  • 表使用万能选择器,并且警惕隐式的万能选择器
代码语言:javascript
复制
$('div.someclass :radio'); // 差
$('div.someclass input:radio'); // 棒
  • 操作任何元素前先将其从文档卸载,完了再贴回去
代码语言:javascript
复制
var $myList = $("#list-container > ul").detach();
//...一大堆对$myList的处理
$myList.appendTo("#list-container");

jQuery中each的用法之退出循环和结束本次循环

jQuery中each类似于javascript的for循环

但不同于for循环的是在each里面不能使用break结束循环,也不能使用continue来结束本次循环,想要实现类似的功能就只能用return,

代码语言:javascript
复制
break         用return false
continue     用return ture或者return

$.proxy

$.proxy方法类似于ECMAScript 5的bind方法,可以绑定函数的上下文(也就是this对象)和参数,返回一个新函数。

jQuery.proxy()的主要用处是为回调函数绑定上下文对象。

代码语言:javascript
复制
var o = {
    type: "object",
    test: function(event) {
        console.log(this.type);
    }
};

$("#button")
  .on("click", o.test) // 无输出
  .on("click", $.proxy(o.test, o)) // object

jQuery的加载

一般采用下面的写法,在网页中加载jQuery。

代码语言:javascript
复制
<script type="text/javascript"
  src="//code.jquery.com/jquery-1.11.0.min.js">
</script>
<script>
window.jQuery ||
  document.write(
    '<script src="js/jquery-1.11.0.min.js" type="text/javascript"><\/script>'
  );
</script>

上面代码有两点需要注意。一是采用CDN加载。如果CDN加载失败,则退回到本地加载。二是采用协议无关的加载网址(使用双斜线表示),同时支持http协议和https协议。

jQuery构造函数

jQuery对象本质上是一个构造函数,主要作用是返回jQuery对象的实例。

代码语言:javascript
复制
$('body').nodeType
// undefined
$('body') instanceof jQuery
// true

上面代码表示,由于jQuery返回的不是DOM对象,所以没有DOM属性nodeType。它返回的是jQuery对象的实例。

jquery事件命名空间

如果可能尽量在绑定事件处理程序时使用一个命名空间,这样可以方便地取消绑定而不会影响其他绑定。

代码语言:javascript
复制
$('button') .on('click.myNamespace', function() { console.log('a'); }); 
$('button') .on('click.myNamespace2', function() { console.log('b'); }); 
$('button').trigger('.myNamespace2');
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016年04月29日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 关于选择器
  • jQuery中each的用法之退出循环和结束本次循环
  • $.proxy
  • jQuery的加载
  • jQuery构造函数
  • jquery事件命名空间
相关产品与服务
内容分发网络 CDN
内容分发网络(Content Delivery Network,CDN)通过将站点内容发布至遍布全球的海量加速节点,使其用户可就近获取所需内容,避免因网络拥堵、跨运营商、跨地域、跨境等因素带来的网络不稳定、访问延迟高等问题,有效提升下载速度、降低响应时间,提供流畅的用户体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档