1. 概述

前端技术得更新换代实在太快,JQuery可能已经不再适合着重学习,不过JQuery得思想已经融入了很多前端框架技术之中,比如这个美元符号,总是可以在一些地方看到,作为最开始使用得JS库,就学习下JQuery中得使用。

2. 详论

2.1. 加载脚本

在HTML页面中引入原生的JS脚本一般都会这样开头:

window.onload=function(){
Func1();
Func2();
Func3();
.....
}

使用window.onload()的原因是因为一般都会希望直到网页加载完毕后,再立刻执行JS脚本的操作,否则会造成在执行JS脚本的时候, HTML文档没有渲染完成,DOM树是不完整,获取DOM中元素未定义的错误。

与window.onload()相对应的,包含JQuery或者采用相似技术的框架会这样加载js脚本:

$(document).ready(function(){
Func1();
Func2();
Func3();
.....
});

$(document)表示的就是选择整个文档对象,.ready()就是DOM加载完成时的相应事件。这个写法进一步简化,就是如下的加载方案:

<!DOCTYPE html>
<html> <head>
<meta charset="utf-8">
<title>样例</title>
<script src="./3rdParty/jquery-3.5.1.js">
</script>
<script>
$(function () {
console.log(jQuery.fn.jquery);
});
</script>
</head> <body>
<p>这是一个段落。</p>
</body> </html>

当然,window.onload与jQuery ready()两种加载方式还是有区别的:

2.2. 选择器

可以认为JQuery的美元符号就是一种选择器,基于已经存在的 CSS 选择器(当然不局限于),能够选取网页中的各种元素。CSS有三种常用的选择器:元素选择器、ID选择器和类选择器;JQuery也有对应的选择器。

2.2.1. 元素选择器

下面例子展示通过实现选取标签元素,实现了一个效果:每次点击按钮,就会修改P元素的颜色属性。

<!DOCTYPE html>
<html> <head>
<meta charset="utf-8">
<title>样例</title>
<script src="./3rdParty/jquery-3.5.1.js">
</script>
<script>
$(function () {
var active = false;
$("button").click(function () {
if(active){
$("p").css("color","#ff0000");
}else{
$("p")[0].style.color = "#00ff00";
}
active = !active;
})
});
</script> <style type="text/css">
p {
color:#ff0000;
}
</style> </head> <body>
<p>这是一个段落。</p>
<button>点我</button>
</body> </html>

通过$选择器,可以实现获取html中的标签元素,从而进一步实现修改对应的CSS属性。

2.2.2. ID选择器

给上面那个例子加上另外一个P标签的段落,id属性设置为test,那么可以像设置css选择器一样设置$()的参数:

<!DOCTYPE html>
<html> <head>
<meta charset="utf-8">
<title>样例</title>
<script src="./3rdParty/jquery-3.5.1.js">
</script>
<script>
$(function () {
var active = false;
$("button").click(function () {
if(active){
$("#test").css("color","#ff0000");
}else{
$("p#test")[0].style.color = "#00ff00";
}
active = !active;
})
});
</script> <style type="text/css">
p {
color:#ff0000;
} #test {
color:#0000ff;
}
</style> </head> <body>
<p>这是一个段落。</p>
<p id="test">这是另外一个段落</p>
<button>点我</button>
</body> </html>

显示结果与之前的例子类似,同样是P标签元素,只有id值为test的元素改变颜色的功能生效了。

2.2.3. 类选择器

类选择器仍然与css一样,通过.符号+类名作为$()的参数,选择所有有相同class的元素:

<!DOCTYPE html>
<html> <head>
<meta charset="utf-8">
<title>样例</title>
<script src="./3rdParty/jquery-3.5.1.js">
</script>
<script>
$(function () {
var active = false;
$("button").click(function () {
if(active){
$(".test1").css("color","#ffff00");
}else{
$("p.test1")[0].style.color = "#00ff00";
$("h2.test1")[0].style.color = "#00ff00";
}
active = !active;
})
});
</script> <style type="text/css">
p {
color:#ff0000;
} #test {
color:#0000ff;
} .test1{
color: #ffff00;
}
</style> </head> <body>
<h2 class="test1">这是一个标题</h2>
<p class="test1">这是一个段落。</p>
<p id="test">这是另外一个段落</p>
<button>点我</button>
</body> </html>

需要注意这时选取到元素可能元素标签可能不同。

2.3. 引入方法

在JQuery中,$还有个作用是引入各种JQuery已经封装好的方法,例如:

.trim() 去除字符串两端的空格

.each() 遍历一个数组或对象。

.inArray() 返回一个值在数组中的索引位置。

.type() 判断对象的类别

.getJSON() 使用 AJAX 请求来获得 JSON 数据。

......

3. 参考

  1. JavaScript window.onload
  2. jQuery 教程
  3. jQuery选择器大全整理

JQuery中美元符号$的更多相关文章

  1. 解决jQuery中美元符号($)命名与别的js脚本库引用冲突方法

    在Jquery中,$是JQuery的别名,所有使用$的地方也都可以使用JQuery来替换,如$('#msg')等同于JQuery('#msg') 的写法.然而,当我们引入多个js库后,在另外一个js库 ...

  2. jquery中美元符号命名冲突问题解决

    在Jquery中,$是JQuery的别名,所有使用$的地方也都可以使用JQuery来替换,如$('#msg')等同于JQuery('#msg') 的写法.然而,当我们引入多个js库后,在另外一个js库 ...

  3. jquery中美元符号($)命名冲突

    http://blog.csdn.net/shanshan209/article/details/6341727 在Jquery中,$是JQuery的别名,所有使用$的地方也都可以使用JQuery来替 ...

  4. Vue中美元$符号的意思

    vue的实例属性和方法 除了数据属性,Vue 实例还暴露了一些有用的实例属性与方法.它们都有前缀 $,以便与用户定义的属性区分开来.例如: var data = { a: 1 } var vm = n ...

  5. 【转】js程序中美元符号$是什么

    $符号在php中是表示变量的特征字符, 在js中它也有很多作用, 一般我们用来命名一个函数名称,获取id的1.首先可以用来表示变量, 比如变量 var s='asdsd'或var $s='asdasd ...

  6. js程序中美元符号$是什么(转)

    $符号在php中是表示变量的特征字符, 在js中它也有很多作用, 一般我们用来命名一个函数名称,获取id的1.首先可以用来表示变量, 比如变量 var s='asdsd'或var $s='asdasd ...

  7. php中美元符号是什么意思

    php中$符号是变量符号: 把$符号加上字符串,这个字符串就是一个变量名或对象名. 其实PHP采用的是C语言的语法,但是也有一些区别,$符号加上字符串,这就是一个变量名或对象名. 例如下面的代码:(推 ...

  8. jQuery基础之(二)jQuery中的$

    在jQuery中,最常用的莫过于使用美元符号$,它提供了各种各样的丰富功能.包括选择页面中一个或者一类元素.作为功能函数的前缀.windows.onload的完善,创建DOM节点等.本文介绍jQuer ...

  9. jQuery中的常用内容总结(一)

    jQuery中的常用内容总结(一)   前言 不好意思(✿◠‿◠),由于回家看病以及处理一些其它事情耽搁了,不然这篇博客本该上上周或者上周写的:同时闲谈几句:在这里建议各位开发的童鞋,如果有疾病尽快治 ...

  10. $ -----JavaScript 中美元符号 $ 的作用

    JavaScript 中美元符号 $ 是什么 1.首先可以用来表示变量,比如变量 var s='asdsd'或var $s='asdasd'; 2.在正则表达式中,它可以匹配结尾:/sa$/.test ...

随机推荐

  1. [NSSCTF 2022 Spring Recruit]babyphp

    打开靶机,先看了一遍代码,发现要拿到flag,就必须先满足三个条件,即分别为a,b,c 第一层:需要a满足条件 isset($_POST['a'])&&!preg_match('/[0 ...

  2. [SWPUCTF 2021 新生赛]sql

    看到网站上写着参数是wllm,就用wllm=1试了一下,发现是SQL注入 查找字段数时,提示请勿非法操作 说明空格出现过滤,可以用/**/绕过 http://1.14.71.254:28347/?wl ...

  3. 初探富文本之React实时预览

    初探富文本之React实时预览 在前文中我们探讨了很多关于富文本引擎和协同的能力,在本文中我们更偏向具体的应用组件实现.在一些场景中比如组件库的文档编写时,我们希望能够有实时预览的能力,也就是用户可以 ...

  4. 大语言模型基础-Transformer模型详解和训练

    一.Transformer概述 Transformer是由谷歌在17年提出并应用于神经机器翻译的seq2seq模型,其结构完全通过自注意力机制完成对源语言序列和目标语言序列的全局依赖建模. Trans ...

  5. Spring @ConfigurationProperties Yaml语法配置List和Map:List<String>、List<Obj>、List<List<Obj>>、Map<String,String>、Map<String,List<String>>、Map<String,Obj>、Map<String,List<Obj>>

    yaml语法 数据结构可以用类似大纲的缩排方式呈现,结构通过缩进来表示,连续的项目通过减号"-"来表示,map结构里面的key/value对用冒号":"来分隔. ...

  6. python 安装包时 ERROR: Failed building wheel for webrtcvad

    报错信息: error: subprocess-exited-with-error × Building wheel for webrtcvad (pyproject.toml) did not ru ...

  7. 宏任务和微任务,同步异步,promis,await执行顺序

    本文作为EVENLOOP事件循环的延伸: 执行顺序: ------------循环---------- |                                              | ...

  8. 微信小程序:音乐播放器

    音乐资源使用的是QQ音乐资源.图片资源使用的网易云音乐的专辑图片. HTML: <view class="container"> <div wx:for=&quo ...

  9. websocket和ajax的区别(和http的区别)

    websocket和ajax的区别(和http的区别) https://segmentfault.com/a/1190000021741131 1. 本质不同 ajax,即异步JavaScript和X ...

  10. 聊聊Flink必知必会(五)

    聊聊Flink的必知必会(三) 聊聊Flink必知必会(四) 从源码中,根据关键的代码,梳理一下Flink中的时间与窗口实现逻辑. WindowedStream 对数据流执行keyBy()操作后,再调 ...