JavaScript项目总结一

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);
              },
时间: 2024-08-25 08:10:54

JavaScript项目总结一的相关文章

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

在JavaScript的开发中,我们都会写一些工具类来帮我们简化一些业务操作的逻辑,一下就貼几个我在项目开发过程中常用的工具类.表达能力有限,各位看官还是看源码吧. 一.日期处理工具类. /** * 日期处理工具类 * @Authors: jackyWHJ * @date 2013-10-18 * */ var DateUtils = { /** * 得到日期在一年当中的周数 */ getISOYearWeek: function(date) { var commericalyear = thi

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

(此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:微软变得更加开放后,走向开放的不仅有.NET运行时.IDE工具,还有ALM服务器核心组件Team Foundation Server的SaaS版本Visual Studio Online. Visual Studio Online(VSO)是微软ALM产品线的服务器核心组件的SaaS版,只要有微软账号都可以免费开通自己的VSO账户,创建不限数量的私有项目,只是限制了5个免费开发人员账号.过去一

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

 Grunt 是一个基于任务的 JavaScript 项目命令行构建工具,运行于 Node.js 平台.Grunt 能够从模板快速创建项目,合并.压缩和校验 CSS & JS 文件,运行单元测试以及启动静态服务器. 安装 Grunt 推荐 Windows 用户使用 Git Shell 来进行命令行操作.安装 Windows 桌面版 GitHub 的时候会自动安装 Git Shell. GitHub for Windows 下载地址:http://windows.github.com Grunt

Javascript项目

常见javascript特效,javascript开源项目 1.http://js.fgm.cc/learn/(阿里的牛x工程师写的) 2.

React-Knockout无缝粘合,JavaScript项目MVVM框架下的控件化

这次讲的是把React和Knockout结合使用的示例,两个框架各有所长,也有不同的特点和特色,这次把他们结合起来,似乎有些胆大妄为,然而有时候就是容易遇到一些奇怪的需求.使得我们不得不去出一些奇招.然而这样真的很奇怪吗?实际上并不是这样子,使用react创建控件,再使用knockout构建MVVM框架,开发流程可以变得有条不絮,易于扩展维护,同时可实现代码重用,减少开发的工作量. 1.要构建React-Knockout MVVM框架我们首先需要下载React和knockout的JS库 Reac

【JavaScript】直接拿来用!最火的前端开源项目(一)

摘要:对于开发者而言,了解当下比较流行的开源项目很是必要.利用这些项目,有时能够让你达到事半功倍的效果.为此,本文整理GitHub上最火的前端开源项目列表,这里按分类的方式列出前九个. 对于开发者而言,了解当下比较流行的开源项目很是必要.利用这些项目,有时能够让你达到事半功倍的效果.为此,本文整理GitHub上最火的前端开源项目列表,内容涵盖了Hack Design. Designer School.TheExpressiveWeb.如何成为优秀的前端开发工程师.Web开发教学材等,这里按分类的

JavaScript 二进制的 AST

本文和大家分享的主要是javascript中二进制的 AST相关内容,一起来看看吧,希望对大家学习javascript有所帮助. 背景介绍 多年来,JavaScript 已经从最慢的脚本语言之一,从老爷车发展为兰博基尼,不管是通过 Web 浏览器还是其他环境.它都能够快到可以运行桌面.服务器.移动甚至嵌入式应用程序. 随着 JavaScript 的增长,应用程序的复杂程度和规模都越来越复杂.然而,二十年前,少数使用过 JavaScript 的网站也就加载几千字节的 JavaScript,许多网站

编写简洁的 JavaScript 代码

作者:尹锋链接:https://www.zhihu.com/question/20635785/answer/223515216来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 避免使用 js 糟粕和鸡肋 这些年来,随着 HTML5 和 Node.js 的发展,JavaScript 在各个领域遍地开花,已经从"世界上最被误解的语言"变成了"世界上最流行的语言".但是由于历史原因,JavaScript 语言设计中还是有一些糟粕和鸡肋,比如

网站前端_JavaScript-项目经验.纯JavaScript实现客户端的分页功能?

项目简介: 说明: 此项目属于医院电子病例系统,由于历史原因,整个系统后台基于Java开发,前端使用Html+CSS+原生JavaScript,项目功能模块要求必须纯JS实现,而此次的任务是为住院病例页面编写一个客户端分页功能. 实现思路: 1. 基于客户端分页的前提是数据已经加载完毕,所以此功能模块必须等待数据加载完毕后再加载 2. 基于客户端分页的首页只需要显示24个患者信息即可 3. 上一页/当前页/下一页功能类似,基于当前页面传递同样的参数(页码, 限制患者数),所以自然而然想到了递归,