jQuery编程技巧

1.将会重用的元素缓存

//bad

var h = $(‘#hello‘).height();

$(‘#hello‘).css(‘height‘,h-20);

//good

var $hello = $(‘#hello‘),

  h = $hello.height();

$hello.css(‘height‘,h-20);

2.尽量少设置全局变量,尽量在函数作用域内设置变量

3.在jQuery对象前加$前缀,便于识别

//bad

var hello = $(‘#hello‘),

  value = hello.val();

//good

var $hello = $(‘#hello‘),

  value = $hello.val();

4.将多条var语句合并成一条var语句,将未赋值的变量放到后面

//good

var $hello = $(‘#hello‘),

  value = $hello.val(),

  k = 3,

  i,

  j,

  myArr = [];

5.统一使用on()方法

//bad

$hello.click(function(){

  $hello.css(‘border‘,‘1px solid red‘);

  $hello.css(‘color‘,‘blue‘);

});

$hello.hover(function(){

  $hello.css(‘border‘,‘1px solid red‘);

});

//good

$hello.on(‘click‘,function(){ 

  $hello.css(‘border‘,‘1px solid red‘);

  $hello.css(‘color‘,‘blue‘);

});

$hello.on(‘hover‘,function(){

  $hello.css(‘border‘,‘1px solid red‘);

});

6.精简js

//bad

$hello.click(function(){

  $hello.css(‘border‘,‘1px solid red‘);

  $hello.css(‘color‘,‘blue‘);

});

//good

$hello.on(function(){

  $hello.css({

    ‘border‘:‘1px solid red‘,

    ‘color‘:‘blue‘

  });

});

7.链式操作

//bad

$hello.html(value);

$hello.on(‘click‘,function(){

  alert(‘hello everyone‘);

});

$hello.fadeIn(‘slow‘);

$hello.animate({height:‘120px‘},500);

//good

$hello.html(value);

$hello.on(‘click‘,function(){

  alert(‘hello everyone‘);

}).fadeIn(‘slow‘).animate({height:‘120px‘},500);

8.利用锁进和换行提高代码可读性

//bad

$hello.html(value);

$hello.on(‘click‘,function(){

  alert(‘hello everyone‘);

}).fadeIn(‘slow‘).animate({height:‘120px‘},500);

//good

$hello.html(value);

$hello

  .on(‘click‘,function(){alert(‘hello everyone‘);})

  .fadeIn(‘slow‘)

  .animate({height:‘120px‘},500);

9.使用短路求值,短路求值是一个从左到右的表达式,用&&(逻辑与)或||(逻辑或)操作符

//bad

function init($myElement){

  if(!$myElement){

    $myElement = $(‘#myElement‘);

  }

}

//good

function init($myElement){

  $myElement = $myElement || $(‘#myElement‘);

}

10.选择捷径

//bad

if(myArr.length > 0){}

//good

if(myArr.length){}

11.缓存父元素并在选择子元素时重用这些已缓存的父元素

//bad

var $container = $(‘#container‘),

  $containerLi = $(‘#container li‘),

  $containerLiSpan = $(‘#container li span‘);

//good

var $container = $(‘#container‘),

  $containerLi = $(‘#container‘).find(‘li‘),

  $containerLiSpan = $containerLi.find(‘span‘);

12.尽量少用通用选择符(*)

13.避免隐式通用选择符

//bad

$(‘.hello :radio‘)

//good

$(‘.hello input:radio‘)

14.优化选择符

时间: 2024-12-21 09:44:46

jQuery编程技巧的相关文章

编程技巧总结

一.C#编程技巧总结: 1.list查询条件及查询结果 ResRoomResourceModel roomResourceModel = new ResRoomResourceModel();//ResRoomResourceModel 是新类 roomResourceModel.GroupCode = baseEntityModel.GroupCode; roomResourceModel.HotelCode = baseEntityModel.HotelCode; roomResourceM

JQuery常用技巧总结

1.关于页面元素的引用通过jquery的$()引用元素包括通过id.class.元素名以及元素的层级关系及dom或者xpath条件等方法,且返回的对象为jquery对象(集合对象),不能直接调用dom定义的方法.2.jQuery对象与dom对象的转换只有jquery对象才能使用jquery定义的方法.注意dom对象和jquery对象是有区别的,调用方法时要注意操作的是dom对象还是jquery对象.普通的dom对象一般可以通过$()转换成jquery对象.如:$(document.getElem

分享25个实用的博客,有助你提高编程技巧

编程是一个不断变化的领域,一旦你选择了它作为你的职业,你就不可能停下学习的脚步了.因为科技的发展月新日异,要跟得上它发展的脚步,你必须不断地努力学习.在Forbes.com最近发表的一篇文章(25 Practical Blogs To Sharpen Your Coding Skills)中,作者Tomas Laurinavicius 推荐了25个他认为很适合程序员或学习编程的人在工作或学习中阅读的博客. 1. Scott Hanselman 在微软担任网络平台开发的Scott Hanselma

jQuery常用技巧-使用的总结

1.关于页面元素的引用 通过jquery的$()引用元素包括通过id.class.元素名以及元素的层级关系及dom或者xpath条件等方法,且返回的对象为jquery对象(集合对象),不能直接调用dom定义的方法. 2.jQuery对象与dom对象的转换 只有jquery对象才能使用jquery定义的方法.注意dom对象和jquery对象是有区别的,调用方法时要注意操作的是dom对象还是jquery对象. 普通的dom对象一般可以通过$()转换成jquery对象. 如:$(document.ge

15个提高编程技巧的JavaScript工具

原文地址:http://www.imooc.com/wenda/detail/243523 JavaScript脚本库是一个预先用JavaScript语言写好的库,它方便了我们开发基于JavaScript的应用程序,特别适合AJAX和其他一些以Web为中心的技术.JavaScript主要用于编写嵌入或者包含在HTML页面的函数,从而实现DOM之间的交互. 这篇文章收集了15个可用于提高编程技巧的JavaScript工具,助你轻松快速完成工作.下面的这些JavaScript工具能让你管理Javas

程序员都会的 35 个 jQuery 小技巧

收集的35个 jQuery 小技巧/代码片段,可以帮你快速开发. 1. 禁止右键点击 1 $(document).ready(function(){ 2 $(document).bind("contextmenu",function(e){ 3 return false; 4 }); 5 }); 2. 隐藏搜索文本框文字 1 Hide when clicked in the search field, the value.(example can be found below in t

ZStack中的编程技巧

1. 像函数一样使用的宏 //这个宏,用来被其他宏使用,构造一个正确有效的表达式.这个适合于一些离散语句的组合,不适合函数的重新命名 #define st(x)      do { x } while (__LINE__ == -1) 例如:#define aps_GroupsRemaingCapacity() ( APS_MAX_GROUPS - aps_CountAllGroups() ) 上述的这个宏,调用的其他函数来实现其功能,因此,不适合使用st()宏. 使用场景:  aps_Grou

【VC编程技巧】窗体?3.5对单文档或者多文档程序制作启动画面

(一)概要: 文章描述了怎样通过Visual C++ 2012或者Visual C++ .NET,为单文档或者多文档程序制作启动画面.在Microsoft Visual Studio 6.0中对于单文档程序(SDI)我们可以很方便利用微软提供的组件Visual C++ Component (Splash Screen).因为在Microsoft Visual Studio 6.0以后的版本或者Visual C++ .NET没有提供这个组件,我们可以通过自定义对话框来实现Splash Screen

必须学会使用的35个Jquery小技巧

query 与JS相比较,方便了许多,语法上也简便了不少,下面是Jquery常用的技巧,下面Jquery使用的方法在各个网站中都会使用到. 收集的35个 jQuery 小技巧/代码片段,可以帮你快速开发. 1. 禁止右键点击 1 2 3 4 5 $(document).ready(function(){     $(document).bind("contextmenu",function(e){         return false;     }); }); 2. 隐藏搜索文本框