一些应该熟记于心的jQuery函数和技巧

发表于:2011-1-19 10:00

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:司马牵牛 译    来源:51Testing软件测试网采编

  移除元素

  移除元素并不难,当我们谈到对树进行转换时,在这一过程一定会涉及元素的移除。下面我们来移除之前选择的那个段落(注意我们可以再次使用选择器)。

$("#wrapper").children('#main').children('p').remove();

  在这一代码中,位于选中元素之中的所有元素都将被移除,所以必须十分小心。如果div下有一个列表,当我们移除该div时,div和列表都会被移除。

  表面之下

  jQuery类似只露出一角的冰山,在水面之下还有更多内容。这一小结中,我们将向你展示某些表面之下的内容。

  绑定(Bind)

  绑定是一种方法,利用它,我们可以将一个事件(鼠标点击、悬置等等)与一个方法连接起来。这有点类似:当用户单击此处时,调用该方法。听起来很熟悉,对吗?没错,我们经常这样做。看看以下示例:

  • $(document).ready(function(){  
  •    $("#id").click(function(){  
  •      alert("Thatclickwasamazing!");  
  •    });  
  • });
  •   上文中click()方法在以下代码相对于wrapper:

  • $(document).ready(function(){  
  •   $('#id').bind('click', function (){  
  •     alert("Thatclickwasamazing!");  
  •   });  
  • });
  •   此外,使用unbind()方法可以解除事件与元素的连接。

      定义你自己的jQuery方法

      目前我们看到了一些方法,如click、bind、hover等等,但是我们如何定义自己的方法?如何使用$(’selector’).mymethod()这样的语句调用这些方法?以下代码提供了这些问题的解决方案。定义一个方法,显示一个元素的值。

  • //ThenamewillbealertVal  
  • jQuery.fn.alertValfunction(){  
  •     var element=$(this[0]); //That'sourelement  
  •     if (element.val())  
  •         alert(element.val()); //That'sourelement'svalue  
  • };  
  • //Thisisthewaywecanuseit  
  • $("selector").alertVal();
  •   回调(callback)是常用的解决方案

      使用回调,我们可以在其他方法完成时执行某个方法。你可以将回调方法看做对别人说:但你做完时,给我电话,因为我要做我的那份工作。不过现在的问题是:如何使用回调?

  • $(document).ready(function(){  
  •     myCallBackfunction(){  
  •         alert("I'macallbackalert.");  
  •      }     
  •  //WhenthegetfinishesthenmyCallBackisexecuted  
  •   $.get('myhtmlpage.html',myCallBack);  
  • });
  •   注意:如果该函数包含参数,我们必须使用以下方式:

  • $(document).ready(function(){  
  •   $.get('myhtmlpage.html',function(){  
  •     myCallBack(param1,param2);  
  •   });  
  • });
  •   结论

      本文只是介绍一些技巧,能够让你更好的理解有关jQuery的知识。当然,还有许多技巧比本文所讲的内容更为高级,但你可以将本文看做一名优秀的jQuery开发者迈出的第一步,同时关于jQuery,51Testing软件测试网推荐阅读:你应该学习jQuery的七大理由

    相关链接:

    你应该学习jQuery的七大理由

    了解jQuery技巧来提高你的代码质量

    44/4<1234
    《2023软件测试行业现状调查报告》独家发布~

    关注51Testing

    联系我们

    快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

    法律顾问:上海兰迪律师事务所 项棋律师
    版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
    投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

    沪ICP备05003035号

    沪公网安备 31010102002173号