惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

W
WeLiveSecurity
The GitHub Blog
The GitHub Blog
Engineering at Meta
Engineering at Meta
Microsoft Azure Blog
Microsoft Azure Blog
The Register - Security
The Register - Security
Stack Overflow Blog
Stack Overflow Blog
博客园 - 三生石上(FineUI控件)
T
Threat Research - Cisco Blogs
S
SegmentFault 最新的问题
V2EX - 技术
V2EX - 技术
Hacker News: Ask HN
Hacker News: Ask HN
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
P
Proofpoint News Feed
J
Java Code Geeks
Microsoft Security Blog
Microsoft Security Blog
M
MIT News - Artificial intelligence
AI
AI
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
P
Proofpoint News Feed
Hacker News - Newest:
Hacker News - Newest: "LLM"
B
Blog
N
News and Events Feed by Topic
N
News | PayPal Newsroom
Google DeepMind News
Google DeepMind News
酷 壳 – CoolShell
酷 壳 – CoolShell
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
WordPress大学
WordPress大学
C
Cybersecurity and Infrastructure Security Agency CISA
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
博客园 - 【当耐特】
U
Unit 42
腾讯CDC
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
The Cloudflare Blog
H
Help Net Security
Recent Announcements
Recent Announcements
P
Privacy & Cybersecurity Law Blog
IT之家
IT之家
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Security Archives - TechRepublic
Security Archives - TechRepublic
L
LINUX DO - 热门话题
Martin Fowler
Martin Fowler
MongoDB | Blog
MongoDB | Blog
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
H
Heimdal Security Blog
博客园 - 聂微东
S
Securelist
大猫的无限游戏
大猫的无限游戏
Cloudbric
Cloudbric
Cisco Talos Blog
Cisco Talos Blog

博客园 - aito

在Umbraco中使用XSLTsearch包实现搜索功能 在Umbraco使用Edit in Cavas(实时编辑器)注意两点 在Umbraco中建立连接列表 在空的Umbraco中建立网页 win 7上安装Umbraco Entity Framework基础:新建一个EF应用 利用VS2010安装的SQL Express2008直接建立数据库文件 新建MCV建立测试工程,编译出错的解决办法 VS中各种文件及其扩展名 MVC学习笔记一:基础知识 分页查询SQL语句 ADO.NET事务处理 将存储过程用于Command对象 参数化SQL语句 ADO.NET常用对象 ADO.NET简介 插入运行代码 - aito - 博客园 Button控件 - aito - 博客园 CSS选择器
jQuery选择器
aito · 2010-08-22 · via 博客园 - aito

jQuery中的选择器完全继承了CSS的风格。利用jQuery选择器,可以非常便捷和快速地找出特定的DOM元素,然后为它们添加相应的行为,而无需担心浏览器是否支持这一选择器。学会使用选择器是学习jQueryr的基础,jQuery的行为规则都必须在获取到元素后才能生效。jQuery选择器的写法与《CSS选择器》的写法十分相似,只不过两者的作用效果不同,CSS选择器找到元素后是添加样式,而jQuery选择器找到元素后是添加行为。需要特别说明的是,jQuery涉及操用CSS样式的部分比单纯的CSS功能更加强大,并且拥有跨浏览器的兼容性。

jQuery选择器的优势

1、简洁的写法
$()函数在很多JavaScript类库中都被作为一个选择器函数来使用,在jQuery中也不例外。其中,$("#ID")用来代替document.getElementById()函数,即通过ID获取元素:$("tagName")用来代替document.getElementByTagName()函数,即通过标签名获取HTML元素;其他选择器的写法2.3

2.支持CSS1到CSS3选择器
jQuery选择器支持CSS1、CSS2的全部和CSS3的部分选择器,同时它也有少量独有的选择器,因此对拥有一定CSS基础的开发人员来说,学习jQuery选择器是件非常容易的事,而对于没有接触CSS技术的开以人员来说,在学习jQuery选择器的同时也可以掌握CSS选择器的基本规则。使用CSS选择器时,开发人员需要考虑主流浏览器是否支持某些选择器。而在jQuery中,开以人员则可以放心地使用jQuery选择器而无需考虑浏览器是否支持这些选择器。

3、完善的处理机制
使用jQuery选择器不仅比使用传统的getElementById()和getElementByTagName()函数简洁得多,而且还能避免某些错误。看下面这个使子,代码如下:

 <div>test</div>
 <script type="text/javascript">
  document.getElementById("tt").style.color="red";
 </script>

运行上面代码,浏览器不会报错,原因是网页中没有id为“tt”的元素。改进后的码如下:

<div>test</div>
 <script type="text/javascript">
  if(document.getElementById("tt")){
     document.getElementById("tt").style.color="red";
  }
 </script>

这样就可以避免浏览报错,但如果要操作的元素很多,可能对每个元素都要进行一次判断,大量重复的工作会使开以人员感到厌倦,而jQuery在这方面问题上的处理是非常不错的,即使用jQeury获取网页中不存在的元素也不会报错,看下面例子,代码如下:

<div>test</div>
<script type="text/javascript">
$('#tt').css("color","red");                 //这里无需判断$('#tt')是否存在
</script>

 有了这个预防措施,即使以后因为某种原因删除网页上某个以前使用过的元素,也不用担心这个网页的javaScrip代码会报错。需要注意的是,$("#tt")获取的永远是对象,即使网页上没有此元素。因此当要用jQuery检查某个元素在网页上是否存在时,不能使用以下代码:

if($("#tt"))
{
   //do something
}

而应该根据获取到元素的长度来判断,代码如下:

if($("#tt").length>0)
{
   //do something
}

 或者转化成DOM对象来判断,代码如下:

if($("#tt")[0])
{
   //do something
}