1.类选择其下,第一个

$('selector').first()==$('selector:first')==$('selector:eq(0)')

2.如果要选择非第一个

$('selector:eq(n)')

3.Dom对象添加事件(比较随意)和JQuery 对象添加事件不一样(建议用on)

Dom.onClick=function(e){}
$('selector').on('click',function(){})

4.DOM 遍历是昂贵的,所以尽量将会重用的元素缓存

$this=$(this)

5.使用 jQuery 中的方法缺少经验,需要查看的文档,有一个更好或更快的方法

$('#id').data(key,value)
//改成(高效)
$.data('#id',key,value)

6.建议申明的全剧变量和调用时采用

window.global

7.鼠标点击其他地方收起“下拉框”

$('body').click(function(e)
{
  if (e.target.id != 'regionLabel' + pageIndex + ''&& e.target.id != 'regionSelectBox' + pageIndex+ '')
  {
    if (!$('#regionSelectBox' + pageIndex + '').hasClass('hide'))
    {
      $('#regionSelectBox' + pageIndex + '').addClass('hide');
      $('#toggleRegionSelectBox' + pageIndex + '').removeClass('invert');
    }
  }
});

8. toggleClass() 对设置或移除被选元素的一个或多个类进行切换。

该方法检查每个元素中指定的类。如果不存在则添加类,如果已设置则删除之。这就是所谓的切换效果。

9. 同辈.siblings()

$(this).addClass('ant-btn-primary').siblings().removeClass('ant-btn-primary');

10.去空

$(this).text().trim();

11.函数结束时紧跟的一对圆括号说明这个函数定以后立即执行

12.在JQuery中,先去空,利用$(this).text().trim();接着进行if判断时,最好把==换成indexOF模糊匹配

13.检测CSS类,hasClass只能接受单个类名作为参数,并且不支持函数参数,is()方法更灵活,可以用来做同样的事。

$('p').hasClass('className')
$('#id').is('.className')
$('#id').is('.classOne.classTwo')

14.数组去重

Array.prototype.unique=function(){
var result=[];
var json={};
for (var i = 0; i < this.length; i++) {
if (!json[this[i]]) {
result.push(this[i]);
json[this[i]]=1;
}
}
return result;
};
//调用
arr.unique();

15.防止点击事件冒泡(冒泡到祖、父类,因为它们可能也有点击事件)

//下面的方法可以借鉴:用户组成动态生成Table,特别是join() 方法用于把数组中的所有元素放入一个字符串。arrayObject.join(separator)

initE2XNeighborTable: function(){
              var $table = $('#tableEx2Neighbor').empty();
              var ring = $('#configAccessRing').val();
              var list = NEIGHBOR_INFO[ring];
              var thead = [
                      '<tr>',
                      '<th>pCell</th>',
                      '<th>sCell</th>',
                      '<th>No. of pCell Edge Users</th>',
                      '<th>No. of Scell Edge Users</th>',
                      '<th>No. of Neighboring Cells</th>',
                      '</tr>'
                      ].join('');
              var tbody = '';
              $.each(list, function(i, row){
                tbody += [
                      '<tr>',
                      '<td>' + row.pCell + '</td>',
                      '<td>' + row.sCell + '</td>',
                      '<td>' + row.pCellUser + '</td>',
                      '<td>' + row.sCellUser + '</td>',
                      '<td>' + row.neighborNum + '</td>',
                      '</tr>'
                      ].join('');
                   });
              $table.append(thead + tbody);
              },

JavaScript项目总结一的更多相关文章

  1. 把VSO作为GitHub上JavaScript项目的免费CI服务器

    (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:微软变得更加开放后,走向开放的不仅有.NET运行时.IDE工具,还有ALM服务器核心组 ...

  2. JavaScript 项目构建工具 Grunt 实践:安装和创建项目框架

     Grunt 是一个基于任务的 JavaScript 项目命令行构建工具,运行于 Node.js 平台.Grunt 能够从模板快速创建项目,合并.压缩和校验 CSS & JS 文件,运行单元测 ...

  3. Windows Store Javascript项目使用高德地图、谷歌地图、百度地图API

    原文 Windows Store Javascript项目使用高德地图.谷歌地图.百度地图API 在Win8 Store 项目中可以使用的地图主要有微软的Bing Map,目前高德地图sdk也支持Wi ...

  4. Win10系列:JavaScript 项目模板和项模板

    使用Visual Studio 开发Windows应用商店应用时,通过其提供的模板可以帮助我们快速地创建一个应用.其中,在新建一个Windows应用商店应用程序项目时可以在项目模板中选择所需要的模板类 ...

  5. GitHub上最流行的Top 10 JavaScript项目

    统计出Github中所有项目的数量,几乎是不可能的,而明确指出哪些是最优秀的项目就更不可能了.如果说到JavaScript,曾经极富创新的项目(很可能)在一两个月后就会变得过时.落后.以防被淹没在大量 ...

  6. webpack前置知识2(JavaScript项目初始化)

    所有的JavaScript项目都是在终端输入npm init -y进行项目初始化,如果要自定义项目规则,去掉 -y 参数. vscode终端快捷键ctrl+` 初始化 运行上述命令后,项目内会新建一个 ...

  7. 如何在TypeScript/JavaScript项目里引入MD5校验和

    摘要:MD5校验和则是其中一种数学算法,通常是使用工具对文件计算得出的一组32 个字符的十六进制字母和数字. 本文分享自华为云社区<TypeScript/JavaScript项目里如何做MD5校 ...

  8. javascript项目实战之原生js模拟淘宝购物车

    通过JavaScript实现类似与淘宝的购物车效果,包括商品的单选.全选.删除.修改数量.价格计算.数目计算.预览等功能的实现.实现的效果图: 相应的代码: shoppingCart.html < ...

  9. Win10系列:JavaScript 项目模板中的文件和项模板文件

    通过上面内容的学习,相信读者已经对各种项目模板和项模板有了大致的了解,本节将进一步介绍项目模板中默认包含的项目文件以及项模板文件,首先讲解这些文件中的初始内容以及作用,然后介绍在一个页面中如何添加控件 ...

  10. 实用篇:说说我在JavaScript项目中使用的工具类

    在JavaScript的开发中,我们都会写一些工具类来帮我们简化一些业务操作的逻辑,一下就貼几个我在项目开发过程中常用的工具类.表达能力有限,各位看官还是看源码吧. 一.日期处理工具类. /** * ...

随机推荐

  1. Springboot Actuator之十:actuator中的audit包

    前言这篇文章我们来分析一下org.springframework.boot.actuate.security,org.springframework.boot.actuate.audit中的代码,这2 ...

  2. AQS工作原理分析

      AQS工作原理分析 一.大致介绍1.前面章节讲解了一下CAS,简单讲就是cmpxchg+lock的原子操作:2.而在谈到并发操作里面,我们不得不谈到AQS,JDK的源码里面好多并发的类都是通过Sy ...

  3. 科大讯飞语音芯片xfs5152CE,分享遇到的一些坑

    首先 芯片手册的I2C地址是写地址,是8位的,真正的地址是7位地址,应该是0x40,最低位是读写位,读置1,为0x81,写置0,为0x80. 如果是模拟I2C倒无所谓,最坑的是我用的是寄存器,所以必须 ...

  4. 基于已有集群动态发现方式部署 Etcd 集群

    etcd提供了多种部署集群的方式,在「通过静态发现方式部署etcd集群」 一文中我们介绍了如何通过静态发现方式部署集群. 不过很多时候,你只知道你要搭建一个多大(包含多少节点)的集群,但是并不能事先知 ...

  5. 完全图解 HTTPS

    安全基础 我们先来看下数据在互联网上数据传递可能会出现的三个比较有代表性的问题,其实后面提到的所有方法,都是围绕解决这三个问题而提出来的. 窃听 伪造 否认 对称密钥加密 假设 A 正在通过互联网向  ...

  6. 【JVM】CMS垃圾回收器

    一.简介 Concurrent Mark Sweep,是一种以获取最短回收停顿时间为目标的收集器,尤其重视服务的响应速度. CMS是老年代垃圾回收器,基于标记-清除算法实现.新生代默认使用ParNew ...

  7. Serverless

    一.介绍 是指依赖于第三方应用程序或服务来管理服务器端逻辑的应用程序. 此类应用程序是基于云的数据库(如Google Firebase)或身份验证服务. 无服务器也意味着开发为事件触发的代码,并且在无 ...

  8. JavaScript API 与 DOM

    一.API 1.API 的概念 API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供引用程序与开发人员基于某软件或硬件得以访问 ...

  9. Unable to establish SSL connection

    当wget出现如下错误: Can't connect to HTTPS URL because the SSL module is not available 需要安装: # sudo apt-get ...

  10. grpc:超时机制

    工作中遇到一个问题,上游服务通过grpc调用下游服务,但是由于下游服务负载太高导致上游服务的调用会随机出现超时的情况,但是有一点不太明确:超时之后,下游服务还会继续进行计算么? 于是自己写了一个dam ...