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);
},
JavaScript项目总结一的更多相关文章
- 把VSO作为GitHub上JavaScript项目的免费CI服务器
(此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:微软变得更加开放后,走向开放的不仅有.NET运行时.IDE工具,还有ALM服务器核心组 ...
- JavaScript 项目构建工具 Grunt 实践:安装和创建项目框架
Grunt 是一个基于任务的 JavaScript 项目命令行构建工具,运行于 Node.js 平台.Grunt 能够从模板快速创建项目,合并.压缩和校验 CSS & JS 文件,运行单元测 ...
- Windows Store Javascript项目使用高德地图、谷歌地图、百度地图API
原文 Windows Store Javascript项目使用高德地图.谷歌地图.百度地图API 在Win8 Store 项目中可以使用的地图主要有微软的Bing Map,目前高德地图sdk也支持Wi ...
- Win10系列:JavaScript 项目模板和项模板
使用Visual Studio 开发Windows应用商店应用时,通过其提供的模板可以帮助我们快速地创建一个应用.其中,在新建一个Windows应用商店应用程序项目时可以在项目模板中选择所需要的模板类 ...
- GitHub上最流行的Top 10 JavaScript项目
统计出Github中所有项目的数量,几乎是不可能的,而明确指出哪些是最优秀的项目就更不可能了.如果说到JavaScript,曾经极富创新的项目(很可能)在一两个月后就会变得过时.落后.以防被淹没在大量 ...
- webpack前置知识2(JavaScript项目初始化)
所有的JavaScript项目都是在终端输入npm init -y进行项目初始化,如果要自定义项目规则,去掉 -y 参数. vscode终端快捷键ctrl+` 初始化 运行上述命令后,项目内会新建一个 ...
- 如何在TypeScript/JavaScript项目里引入MD5校验和
摘要:MD5校验和则是其中一种数学算法,通常是使用工具对文件计算得出的一组32 个字符的十六进制字母和数字. 本文分享自华为云社区<TypeScript/JavaScript项目里如何做MD5校 ...
- javascript项目实战之原生js模拟淘宝购物车
通过JavaScript实现类似与淘宝的购物车效果,包括商品的单选.全选.删除.修改数量.价格计算.数目计算.预览等功能的实现.实现的效果图: 相应的代码: shoppingCart.html < ...
- Win10系列:JavaScript 项目模板中的文件和项模板文件
通过上面内容的学习,相信读者已经对各种项目模板和项模板有了大致的了解,本节将进一步介绍项目模板中默认包含的项目文件以及项模板文件,首先讲解这些文件中的初始内容以及作用,然后介绍在一个页面中如何添加控件 ...
- 实用篇:说说我在JavaScript项目中使用的工具类
在JavaScript的开发中,我们都会写一些工具类来帮我们简化一些业务操作的逻辑,一下就貼几个我在项目开发过程中常用的工具类.表达能力有限,各位看官还是看源码吧. 一.日期处理工具类. /** * ...
随机推荐
- angular数据请求 token验证
angualr的token 验证会经常用在登录,注册等地方 对于token的使用方法按照以下步骤进行使用即可 1.新建一个服务 ng g service services /+服务名 eg:ng g ...
- 043 用户注册功能03--Redis安装及完成短信发送功能
1.Redis安装 (1)下载地址:https://github.com/MicrosoftArchive/redis/releases/tag/win-3.2.100 ( redis官网: ht ...
- [转帖]Hikari 数据源介绍
Hikari 数据源介绍 jimmy・2018 年 09 月 23 日・默认分类 预估 https://izhong.me/index.php/archives/78/ 介绍 官网地址: https: ...
- DataTable 删除行 UpdateTable 方法
.不要使用DataTable.Rows.Remove(row) 而要使用 DataTable.Rows[i].Delete() .DataTable.Rows.Remove(row)相当于DataTa ...
- 小白的C++之路——求质数
初学C++,打算用博客记录学习的足迹.写了两个求质数的程序,修修改改. #include <iostream> #include <math.h> using namespac ...
- Vue项目(vuecli3.0搭建)集成高德地图实现路线轨迹绘制
先看最后实现的效果图 高德地图api文档 https://lbs.amap.com/api/javascript-api/summary 使用 1.在index.html里面引入高德地图js文件 2. ...
- Linux C++ Socket 高并发短连接 TIME_WAIT 挥之不去解决方法
近期遇到一个项目 需要在Linux上建立一个Socket 进行 HTTP_GET , 需要线程高并发的 使用TCP Socket 进行Send 发送HTTP_GET请求到 指定网站 . 而且不需要re ...
- JDK安装及配置——Linux系统
一.首先下载JDK版本 链接如下:https://www.oracle.com/technetwork/java/javase/downloads/index.html 截止写博客时,最新版已经到12 ...
- MQTT和Coap
什么是MQTT? MQTT是一个“发布和订阅”协议.用户可以订阅某些主题,或发布某些主题的消息.订阅者将收到订阅的主题消息.用户可以通过保证交付来配置协议更可靠. 什么是CoAP? CoAP看起来像是 ...
- 两数相加(C#数据结构和算法练习)
两数相加 给出两个 非空 的链表用来表示两个非负的整数.其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字. 如果,我们将这两个数相加起来,则会返回一个新的链表来表 ...