JQuery官方学习资料(译):选择器的运作

 

  • Getters 和 Setters
    JQuery的方法重载,方法设置和获取值一般使用相同名称的方法,当一个方法用来设置一个值的时候称之为Setter,当一个方法用来获取一个值的时候称之为Getter 。在选择器中Setter对所有的元素都有效,而Getter只能获取选择器中的第一个元素的值。
// 这个.html()方法被作为setter:
$( "h1" ).html( "hello world" );
// 这个.html()方法被作为getter:
$( "h1" ).html();
    Setter返回的是一个JQuery对象,它允许你继续在选择器上调用JQuery方法,而Getter返回的是请求的值,因此你不能继续调用JQuery方法在一个Getter的返回值上。
这是一个错误示例:
$( "h1" ).html().addClass( "test" );

 

  • Chaining
    如果你在选择器上调用一个方法,并且该方法返回的是一个JQuery对象,你可以继续调用JQuery方法在这个对象上,没有分号暂停,这种做法被称之为“Chaining”。
$( "#content" ).find( "h3" ).eq( 2 ).html( "new text for the third h3!" );
    它可以增强代码的可读性。
$( "#content" )
.find( "h3" )
.eq( 2 )
.html( "new text for the third h3!" );
    JQuery提供.end()方法,可以在选择器链的中间返回到最原始的那个选择器。
$( "#content" )
.find( "h3" )
.eq( 2 )
.html( "new text for the third h3!" )
.end() // 恢复到#content中所有h3的选择器
.eq( 0 )
.html( "new text for the first h3!" );
    Chaining是一个非常强大的功能,自从JQuery开始流行,很多的库都应用了这一功能。然而这一功能我们必须谨慎使用,大量的使用Chaining会导致代码难以修改和调试。由于没有应用于Chaining的规范,大量的使用它会得意忘形。
posted @   M守护神  阅读(403)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· [AI/GPT/综述] AI Agent的设计模式综述
点击右上角即可分享
微信分享提示