以下是一些非常有用的jQuery提示和所有jQuery的开发技巧。

1。优化性能复杂的选择
查询DOM中的一个子集,使用复杂的选择时,大幅提高了性能:

var subset = $("");
$("input[value^='']", subset);

2。设置上下文和提高性能
jQuery核心功能上,指定上下文参数。指定context参数,允许从DOM中更深的分支,而不是从DOM根,jQuery来启动。鉴于一个足够大的DOM,指定上下文参数转化为性能提升。

$("input:radio", document.forms[0]);

3。现场事件处理程序

设置任何一个选择的元素相匹配的事件处理程序,即使它被添加后的初始页面加载到DOM:
$('button.someClass').live('click', someFunction);

这允许你通过Ajax加载内容,或通过JavaScript添加事件处理程序的成立为这些元素正确自动。
 
同样,要停止现场事件处理:

4。检查索引
jQuery有索引,但它是一种痛苦,使用你所需要的元素的列表,并通过元素你想要的指标

var index = e.g $('#ul>li').index( liDomObject );
以下是比较容易:
$("ul > li").click(function ()
{
    var index = $(this).prevAll().length;
});
如果你想知道在一个集合元素的索引,例如在一个无序列表的列表项:

5。使用jQuery的数据的方法
jQuery的数据()方法是有用的,不为人所熟知。它可以让你无需修改DOM绑定数据到DOM元素。
$("ul > li").click(function ()
{
    var index = $(this).prevAll().length;
});
6。删除一个元素的淡出效果基本show效果
结合多个jQuery效果,动画和删除DOM元素。

$("#myButton").click(function() {
         $("#myDiv").fadeTo("slow", 0.01, function(){ //fade
             $(this).slideUp("slow", function() { //slide up
                 $(this).remove(); //then remove from the DOM
             });
         });
});
7。检查是否存在一个元素

if ($("#someDiv").length) {
    //hooray!!! it exists...
}

使用下面的代码片段来检查一个元素是否存在与否。

8。添加到DOM中动态创建的元素

使用下面的代码片段来动态创建一个DIV,并添加到DOM。
var newDiv = $('<div></div>');

newDiv.attr("id","myNewDiv").appendTo("body");

9。换行符和chainability的

而不是做:

 
$("a").hide().addClass().fadeIn().hide();

像这样可以增加可读性:

$("a")
  .hide()
  .addClass()
  .fadeIn()
  .hide();

10。创建自定义选择

$.extend($.expr[':'], {
    over100pixels: function(a) {
        return $(a).height() > 100;
    }
});
 
$('.box:over100pixels').click(function() {
    alert('The element you clicked is over 100 pixels high');
});

11。克隆在jQuery对象

使用clone()方法。jQuery的方法克隆任何JavaScript中的DOM对象。

// Clone the DIV
var cloned = $('#somediv').clone();
jQuery的clone()方法不克隆一个JavaScript对象。克隆JavaScript对象,使用下面的代码。

// Shallow copy
var newObject = jQuery.extend({}, oldObject);
 
// Deep copy
var newObject = jQuery.extend(true, {}, oldObject);

12。测试,如果事情是隐藏使用jQuery

我们使用。隐藏()。在jQuery的show()方法来改变元素的知名度。使用以下代码来检查一个元素是否是可见或不可见。
if($(element).is(":visible") == "true") {
       //The element is Visible
}
13。另一种方式的文件准备就绪

//Instead of
$(document).ready(function() {
    //document ready
});
//Use
$(function(){
    //document ready
});

14。选择一个元素。(期),在它的ID

在选择使用反斜杠来选择的元素,在它的ID期间。

$("#Address\\.Street").text("Enter this field");

15。计数的直接子元素

如果你要计算所有的div#foo的元素存在于

<div id="foo">
  <div id="bar"></div>
  <div id="baz">
    <div id="biz">
  </div>
  <span><span>
</div>
 
//jQuery code to count child elements
$("#foo > div").size()
16。做一个“闪存”的元素

jQuery.fn.flash = function( color, duration )
{
    var current = this.css( 'color' );
    this.animate( { color: 'rgb(' + color + ')' }, duration / 2 );
    this.animate( { color: current }, duration / 2 );
}
//Then use the above function as:
$( '#importantElement' ).flash( '255,0,0', 1000 );
17。中心元素在屏幕上

jQuery.fn.center = function () {
    this.css("position","absolute");
    this.css("top", ( $(window).height() - this.height() ) / 2+$(window).scrollTop() + "px");
    this.css("left", ( $(window).width() - this.width() ) / 2+$(window).scrollLeft() + "px");
    return this;
}
 
//Use the above function as:
$(element).center();

18。获取父div使用最接近

如果你想找到的包装纸DIV元素(不论该DIV的ID),然后你会想这个jQuery选择:

$("#searchBox").closest("div");

19。禁用右键单击上下文菜单

还有许多JavaScript片段禁用右键
单击上下文菜单,但jQuery让事情容易多了:

$(document).ready(function(){
    $(document).bind("contextmenu",function(e){
        return false;
    });

});

20。获取鼠标光标的X和Y轴

这个脚本会显示X和Y值 - 鼠标指针的坐标。

$().mousemove(function(e){
    //display the x and y axis values inside the P element
    $('p').html("X Axis : " + e.pageX + " | Y Axis " + e.pageY);
});

20个热门jQuery的提示和技巧的更多相关文章

  1. 几个 jQuery 小提示和技巧

    几个 jQuery 小提示和技巧 今天,我们将分享一些很有用的技巧和窍门给 jQuery 开发人员.jQuery 是最好的 JavaScript 库之一,用于简化动画,事件处理,支持 Ajax 和 H ...

  2. 开发中可能会用到的几个 jQuery 小提示和技巧

    今天,我们将分享一些很有用的技巧和窍门给 jQuery 开发人员.jQuery 是最好的 JavaScript 库之一,用于简化动画,事件处理,支持 Ajax 和 HTML 的客户端脚本.网络中有大量 ...

  3. 开发中可能会用到的几个 jQuery 小提示和技巧(转)

    今天,我们将分享一些很有用的技巧和窍门给 jQuery 开发人员.jQuery 是最好的 JavaScript 库之一,用于简化动画,事件处理,支持 Ajax 和 HTML 的客户端脚本.网络中有大量 ...

  4. 开发中可能会用到的几个 jQuery 小提示和技巧 (转)

    转自:http://www.cnblogs.com/lhb25/p/useful-jquery-tips-and-tricks.html 今天,我们将分享一些很有用的技巧和窍门给 jQuery 开发人 ...

  5. 25个增强iOS应用程序性能的提示和技巧(中级篇)(3)

    25个增强iOS应用程序性能的提示和技巧(中级篇)(3) 2013-04-16 14:42 破船之家 beyondvincent 字号:T | T 本文收集了25个关于可以提升程序性能的提示和技巧,分 ...

  6. 25个增强iOS应用程序性能的提示和技巧--中级篇

    25个增强iOS应用程序性能的提示和技巧--中级篇 标签: ios性能优化内存管理 2013-12-13 10:55 738人阅读 评论(0) 收藏 举报  分类: IPhone开发高级系列(34)  ...

  7. 增强iOS应用程序性能的提示和技巧(25个)

    转自 http://www.cocoachina.com/newbie/basic/2013/0522/6259.html 在开发iOS应用程序时,让程序具有良好的性能是非常关键的.这也是用户所期望的 ...

  8. 25个增强iOS应用程序性能的提示和技巧 — 中级篇

    本文由破船译自:raywenderlich 转载请注明出处:BeyondVincent的博客 _____________ 在开发iOS应用程序时.让程序具有良好的性能是非常关键的.这也是用户所期望的. ...

  9. 【转】推荐10款最热门jQuery UI框架

    推荐10款最热门jQuery UI框架 原创 在进行Web开发时,并非所有的库都适合你的项目,但你仍需要收藏一些Web UI设计相关的库或框架,以在你需要的时候,加快你的开发效率.本文为你推荐10款非 ...

随机推荐

  1. HMM的学习笔记1:前向算法

    HMM的学习笔记 HMM是关于时序的概率模型.描写叙述由一个隐藏的马尔科夫链随机生成不可观測的状态随机序列,再由各个状态生成不可观測的状态随机序列,再由各个状态生成一个观測而产生观測的随机过程. HM ...

  2. C++中的初始化列表中可以对那些变量或对象进行初始化

    构造函数与其函数体之间可以添加初始化列表,能对某些对象进行初始化.格式为 类名() : 变量1(参数1),变量2(参数2) { } 1.     父类的对象的构造必须在初始化列表中,如: 子类名(): ...

  3. 几个因为hadoop配置文件不当造成的错误

    192.168.1.20: Exception in thread "main" java.lang.IllegalArgumentException 192.168.1.20: ...

  4. 使用FindControl("id")查找控件 返回值都是Null的问题

    做了一个通过字符串ID查找页面控件并且给页面控件赋值的功能,过程中遇到了this.FindControl("id")返回值都是Null的问题,记录一下解决办法. 问题的原因是我所要 ...

  5. XML Dtd Schema

    在XML技术里,可以编写一个文档来约束一个XML文档的书写规范,这称之为XML约束. 整体比较: XML Schema符合XML语法结构. DOM.SAX等XML API很容易解析出XML Schem ...

  6. 纪念SlingShot 矩阵

    第一次独立做矩阵,只WA了一次,好高兴~~ 题意:已知 F(n)=3 * F(n-1)+2 * F(n-2)+7 * F(n-3),n>=3,其中F(0)=1,F(1)=3,F(2)=5,对于给 ...

  7. AdapterView及其子类之三:基于ListView及ArrayAdapter实现列表

    见归档项目ListViewDemo.zip. 基本步骤如下: 1.创建主布局文件,里面包含一个ListView元素. <RelativeLayout xmlns:android="ht ...

  8. Git 添加空文件夹的方法

    转自stackoverflow: http://stackoverflow.com/questions/115983/how-do-i-add-an-empty-directory-to-a-git- ...

  9. python3.4下遍历文件目录,不需要再特殊处理中文编码

    python3.4下遍历文件目录,不需要再特殊处理中文编码 直接使用os.walk来遍历中文目录. os.walk方法返回的是一个三元 tupple(dirpath, dirnames, filena ...

  10. [转]Linux下转换字符集(UTF8转换)

    今天在Linux 下使用 Iconv 命令转换一个UTF8文件时,总是转换不成功.提示: iconv: 未知 0 处的非法输入序列 后来使用 man iconv 查看,还是没发现异常,因为命令格式都是 ...