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. java ImmutableMap使用

    原文地址:https://blog.csdn.net/wantsToBeASinger/article/details/84997362 java中的Immutable对象: 简单地说,如果一个对象实 ...

  2. SQLServer ---------- 安装SQLserver数据库

    1.安装SQLserver 数据2008 的地址 https://jingyan.baidu.com/article/948f592434b407d80ef5f97d.html?qq-pf-to=pc ...

  3. FEL表达式的用法

    Fel是开放的,引擎执行中的多个模块都可以扩展或替换.Fel的执行主要是通过函数实现,运算符(+.-等都是Fel函数),所有这些函数都是可以替换的,扩展函数也非常简单. Fel有双引擎,同时支持解释执 ...

  4. 字符串格式连接sqlserver数据库的字段概念解释

    以连接sqlserver数据库举例说明如:“Provider=SQLOLEDB.1;Password=******;Persist Security Info=True;User ID=sa;Init ...

  5. xml文件操作帮助类

    xml文件的节点值获取和节点值设置 /// <summary> /// 保存单个点节点的值 /// </summary> /// <param name="Up ...

  6. Kruskal算法&Prim算法

    最小生成树是什么? Kruskal算法 图文转载自a2392008643的博客 此算法可以称为"加边法",初始最小生成树边数为0,每迭代一次就选择一条满足条件的最小代价边,加入到最 ...

  7. [转发] SAP EPIC 银企直连+TRM资金管理

    事务代码:EPIC_PROC 电子支付集成 收款; 付款; 付款审批; 银行回单(下载,创建,修改,辩识,认领); 查询账户余额; 查询交易明细; BADI增强; VA虚拟账户客户回单自动辨识; .. ...

  8. 《JavaScript高级程序设计》笔记:附录A ECMAScript Harmony

    一般性变化 常量 用const关键字声明常量,声明的变量在初始赋值后,就不能进行修改了,如下代码: const MAX_SIZE = 25; MAX_SIZE = 10; //报错 块级作用域及其他作 ...

  9. ES6 笔记汇总

    ES6 笔记汇总 二.ES6基础-let和const命令 三.变量的解构赋值 四.字符串的拓展 五.正则表达式的拓展 ...将会持续更新,敬请期待

  10. CSS3 新增文本样式

    CSS3 对原来的 CSS2 版本中已定义的属性取值进行修补,增加了更多的属性值,来适应复杂环境中文本的呈现. 一.定义文本阴影 可以给文字添加阴影效果了 Shadow 影子 语法: text-sha ...