`
sunasheng
  • 浏览: 122914 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Javascript开发技巧

阅读更多

1. 创建一个嵌套的过滤器

  filter(":not(:has(.selected))") //去掉所有不包含class为.selected的元素
2. 重用你的元素查询

  var allItems = $("div.item"); 
  var keepList = $("div#container1 div.item"); 
  <div>class names: 
   $(formToLookAt + " input:checked").each(function() { keepListkeepList = keepList.filter("." + $(this).attr("name")); });
  </div>
3. 使用has()来判断一个元素是否包含特定的class或者元素
  $("input").has(".email").addClass("email_icon");
4. 使用jQuery切换样式
  $('link[media='screen']').attr('href', 'Alternative.css'); 
5. 限制选择的区域
  var in_stock = $('#shopping_cart_items input.is_in_stock');
  <ul id="shopping_cart_items"> 
   <li> 
    <input value="Item-X" name="item" class="is_in_stock" type="radio"> Item X</li> 
   <li> 
   <input value="Item-Y" name="item" class="3-5_days" type="radio"> Item Y</li> 
   <li> 
   <input value="Item-Z" name="item" class="unknown" type="radio"> Item Z</li> 
  </ul> 
6. 如何正确使用ToggleClass
  a.hasClass('blueButton') ? a.removeClass('blueButton') : a.addClass('blueButton'); 
  a.toggleClass('blueButton'); 
7. 设置IE指定的功能

  if ($.browser.msie) { // Internet Explorer is a sadist. } 
8. 使用jQuery来替换一个元素

  $('#thatdiv').replaceWith('fnuh');
9. 验证一个元素是否为空

  if ($('#keks').html()) { //Nothing found ;} 
10. 在无序的set中查找一个元素的索引

  $("ul > li").click(function () { 
  var index = $(this).prevAll().length; 
  });
11. 绑定一个函数到一个事件

  $('#foo').bind('click', function() { 
    alert('User clicked on "foo."'); 
  }); 
12. 添加HTML到一个元素

  $('#lal').append('sometext');
13. 创建元素时使用对象来定义属性

  var e = $("", { href: "#", class: "a-class another-class", title: "..." });
14. 使用过滤器过滤多属性
  var elements = $('#someid input[type=sometype][value=somevalue]').get(); 
15. 使用jQuery预加载图片

  jQuery.preloadImages = function() { for(var i = 0; i').attr('src', arguments[i]); } }; 
  // Usage $.preloadImages('image1.gif', '/path/to/image2.png', 'some/image3.jpg'); 
16. 设置任何匹配一个选择器的事件处理程序

  $('button.someClass').live('click', someFunction);
  // .live()
  $("table").each(function(){
    $("td", this).live("hover", function(){
      $(this).toggleClass("hover");
    });
  });
  //Now use..
  $("table").delegate("td", "hover", function(){
   $(this).toggleClass("hover");
  });
17. 找到被选择到的选项(option)元素

  $('#someElement').find('option:selected');
18. 隐藏包含特定值的元素

  $("p.value:contains('thetextvalue')").hide();
19. 自动的滚动到页面特定区域

  jQuery.fn.autoscroll = function(selector) {
  $('html,body').animate(
    {scrollTop: $(selector).offset().top},
     500
    );
  }
  //Then to scroll to the class/area you wish to get to like this:
  $('.area_name').autoscroll();
20. 检测各种浏览器

  Detect Safari (if( $.browser.safari)),
  Detect IE6 and over (if ($.browser.msie &amp;&amp; $.browser.version &gt; 6 )),
  Detect IE6 and below (if ($.browser.msie &amp;&amp; $.browser.version &lt;= 6 )),
  Detect FireFox 2 and above (if ($.browser.mozilla &amp;&amp; $.browser.version &gt;= '1.8' ))
21. 替换字符串中的单词

  var el = $('#id');
  el.html(el.html().replace(/word/ig, ));
22. 关闭右键的菜单

  $(document).bind('contextmenu',function(e){ return false; });
23. 定义一个定制的选择器

  $.expr[':'].mycustomselector = function(element, index, meta, stack){};
  // Custom Selector usage:
  $('.someClasses:test').doSomething();
24. 判断一个元素是否存在

  if ($('#someDiv').length) {//hooray!!! it exists...}
25. 使用jQuery判断鼠标的左右键点击

  $("#someelement").live('click', function(e) {
  if( (!$.browser.msie &amp;&amp; e.button == 0) || ($.browser.msie &amp;&amp; e.button == 1) ) {
    alert("Left Mouse Button Clicked");
  }else if(e.button == 2)
    alert("Right Mouse Button Clicked");
  });

分享到:
评论

相关推荐

    新浪运营部 @孟嘉 - JavaScript开发技巧

    新浪运营部 @孟嘉 - JavaScript开发技巧。 10分,对知识不止是尊重。

    [JavaScript] JavaScript 开发技巧 (英文版)

    [SitePoint] JavaScript 开发技巧 (英文版) [SitePoint] The JavaScript Anthology 101 Essential Tips, Tricks & Hacks (E-Book) ☆ 出版信息:☆ [作者信息] Cameron Adams, James Edwards [出版机构] ...

    JavaScript基础与案例开发详解

    到构建浏览器端的富文本编辑器,再到实现像Windows那样的复杂UI的操作,每一个案例都能让读者从中学习到主流的Javascript开发技巧。针对初学者,《 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。

    JavaScript基础与案例开发详解/于坤, 周大庆编著

    有针对性地安排了丰富的案例,从基本的表格操作、表单操作,到构建浏览器端的富文本编辑器,再到实现像Windows那样的复杂UI的操作,每一个案例都能让读者从中学习到主流的JavaScript开发技巧。针对初学者,...

    JavaScript基础与案例开发详解pdf

    有针对性地安排了丰富的案例,从基本的表格操作、表单操作,到构建浏览器端的富文本编辑器,再到实现像windows那样的复杂ui的操作,每一个案例都能让读者从中学习到主流的javascript开发技巧。. 针对初学者,本书也...

    JavaScript 网页开发实例教程(PDG)

    这个"JavaScript 网页开发实例教程"将通过实际案例,帮助你掌握以上所述的JavaScript开发技巧,使你能够在网页开发领域游刃有余。无论你是刚刚接触JavaScript的新手,还是希望深化对JavaScript理解的开发者,都能...

    基于javaScript开发的控制台操作小技巧+非常适合小白入门

    基于javaScript开发的控制台操作小技巧+非常适合小白入门 基于javaScript开发的控制台操作小技巧+非常适合小白入门 基于javaScript开发的控制台操作小技巧+非常适合小白入门 基于javaScript开发的控制台操作小...

    JavaScript开发技术大全 PDF

    "JavaScript开发技术大全"这本书可能包含了从基础到高级的各种JavaScript知识,包括但不限于以下内容: 1. **基础语法**:JavaScript的基础包括变量、数据类型(如字符串、数字、布尔值、null和undefined)、操作符...

    JavaScript开发技术大全 pdf

    《JavaScript开发技术大全》这本书无疑是深入理解和掌握JavaScript的宝贵资源。它涵盖了从基础语法到高级特性的全面内容,旨在帮助开发者从新手进阶到专家水平。 在JavaScript的世界里,基础知识点包括变量、数据...

    SuperMap iClient for JavaScript开发教程_javascript_SuperMap开发教程_supe

    综上所述,"SuperMap iClient for JavaScript开发教程"涵盖了从基础到高级的GIS开发知识,旨在帮助开发者快速掌握WebGIS应用的开发技巧,实现高效、功能丰富的地图应用。通过深入学习并实践,你将能够利用SuperMap ...

    Javascript开发技术大全源代码

    总的来说,“Javascript开发技术大全源代码”是一个宝贵的资源,它包含了实现各种JavaScript效果的实例,适合初学者巩固基础,也适合有经验的开发者参考和学习新的编程技巧。通过逐步解析和实践这些源代码,你将在...

    JavaScript设计模式与开发实践.pdf

    "JavaScript设计模式与开发实践....《JavaScript设计模式与开发实践》是JavaScript开发人员不可或缺的指南,它可以帮助读者掌握JavaScript设计模式和开发实践的知识,提高软件的质量和可维护性,并提高自己的职业发展。

    js技巧 javaScript编码技巧

    JavaScript,简称JS,是网页开发中的重要脚本语言,它为网页添加动态功能,使得用户交互更为丰富。本文将深入探讨一些JS编码技巧,帮助开发者提升网站特效的实现能力。 一、变量与数据类型 在JavaScript中,变量...

    Javascript开发规范

    JavaScript 开发规范 概述:本文档提供了一份关于 JavaScript 开发规范的指南,旨在帮助开发者编写高质量的 JavaScript 代码。本规范涵盖了变量、常量、分号、嵌套函数、块内函数声明等方面的规则和建议。 一、...

    SuperMap for JavaScript开发教程

    《SuperMap for JavaScript开发教程》是一本专注于使用SuperMap软件进行Web GIS开发的详细指南。SuperMap是一款强大的地理信息系统(GIS)软件,它提供了一系列工具和技术,使得开发者能够构建地图应用,实现对地理...

Global site tag (gtag.js) - Google Analytics