JQuery入门

jQuery基础语法

$(selector).action()

查找标签

选择器

id选择器:

$("#id")

标签选择器:

$("tagName")

class选择器:

$(".className")

配合使用:

$("div.c1")  // 找到有c1 class类的div标签

所有元素选择器:

$("*")

组合选择器:

$("#id, .className, tagName")

 

层级选择器:

x和y可以为任意选择器

$("x y");// x的所有后代y(子子孙孙)
$("x > y");// x的所有儿子y(儿子)
$("x + y")// 找到所有紧挨在x后面的y
$("x ~ y")// x之后所有的兄弟y

 

基本筛选器:

:first // 第一个
:last // 最后一个
:eq(index)// 索引等于index的那个元素
:even // 匹配所有索引值为偶数的元素,从 0 开始计数
:odd // 匹配所有索引值为奇数的元素,从 0 开始计数
:gt(index)// 匹配所有大于给定索引值的元素
:lt(index)// 匹配所有小于给定索引值的元素
:not(元素选择器)// 移除所有满足not条件的标签
:has(元素选择器)// 选取所有包含一个或多个标签在其内的标签(指的是从后代元素找)

属性选择器:

[attribute]
[attribute=value]// 属性等于
[attribute!=value]// 属性不等于

 

表单常用筛选

:text
:password
:file
:radio
:checkbox:submit
:reset
:button

筛选器

下一个元素:

$("#id").next()
$("#id").nextAll()
$("#id").nextUntil("#i2")

上一个元素:

$("#id").prev()
$("#id").prevAll()
$("#id").prevUntil("#i2")

 

父亲元素:

$("#id").parent()
$("#id").parents()  // 查找当前元素的所有的父辈元素
$("#id").parentsUntil() // 查找当前元素的所有的父辈元素,直到遇到匹配的那个元素为止。

儿子和兄弟元素:

$("#id").children();// 儿子们
$("#id").siblings();// 兄弟们

查找元素:

$("#id").find()// 搜索所有与指定表达式匹配的元素。这个函数是找出正在处理的元素的后代元素的好方法。

操作标签

样式操作

样式类

addClass();// 添加指定的CSS类名。
removeClass();// 移除指定的CSS类名。
hasClass();// 判断样式存不存在
toggleClass();// 切换CSS类名,如果有就移除,如果没有就添加

CSS

css("color","red")//DOM操作:tag.style.color="red"

文本操作

HTML代码:

html()// 取得第一个匹配元素的html内容
html(val)// 设置所有匹配元素的html内容

文本值:

text()// 取得所有匹配元素的内容
text(val)// 设置所有匹配元素的内容

值:

val()// 取得第一个匹配元素的当前值
val(val)// 设置所有匹配元素的值
val([val1, val2])// 设置checkbox、select的值

属性操作

用于ID等或自定义属性:

attr(attrName)// 返回第一个匹配元素的属性值
attr(attrName, attrValue)// 为所有匹配元素设置一个属性值
attr({k1: v1, k2:v2})// 为所有匹配元素设置多个属性值
removeAttr()// 从每一个匹配的元素中删除一个属性

用于checkbox和radio

prop() // 获取属性
removeProp() // 移除属性

文档处理

添加到指定元素内部的后面

$(A).append(B)// 把B追加到A
$(A).appendTo(B)// 把A追加到B

添加到指定元素内部的前面

$(A).prepend(B)// 把B前置到A
$(A).prependTo(B)// 把A前置到B

添加到指定元素外部的后面

$(A).after(B)// 把B放到A的后面
$(A).insertAfter(B)// 把A放到B的后面

添加到指定元素外部的前面

$(A).before(B)// 把B放到A的前面
$(A).insertBefore(B)// 把A放到B的前面

移除和清空元素

remove()// 从DOM中删除所有匹配的元素。
empty()// 删除匹配的元素集合中所有的子节点

替换

replaceWith()
replaceAll()

克隆

clone()// 参数

事件

常用事件

click(function(){...})
hover(function(){...})
blur(function(){...})
focus(function(){...})
change(function(){...})
keyup(function(){...})

keydown和keyup事件组合示例:

<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><meta http-equiv="x-ua-compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><title>键盘事件示例</title>
</head>
<body><table border="1"><thead><tr><th>#</th><th>姓名</th><th>操作</th></tr></thead><tbody><tr><td><input type="checkbox"></td><td>Egon</td><td><select><option value="1">上线</option><option value="2">下线</option><option value="3">停职</option></select></td></tr><tr><td><input type="checkbox"></td><td>Alex</td><td><select><option value="1">上线</option><option value="2">下线</option><option value="3">停职</option></select></td></tr><tr><td><input type="checkbox"></td><td>Yuan</td><td><select><option value="1">上线</option><option value="2">下线</option><option value="3">停职</option></select></td></tr><tr><td><input type="checkbox"></td><td>EvaJ</td><td><select><option value="1">上线</option><option value="2">下线</option><option value="3">停职</option></select></td></tr><tr><td><input type="checkbox"></td><td>Gold</td><td><select><option value="1">上线</option><option value="2">下线</option><option value="3">停职</option></select></td></tr></tbody>
</table><input type="button" id="b1" value="全选">
<input type="button" id="b2" value="取消">
<input type="button" id="b3" value="反选"><script src="jquery-3.2.1.min.js"></script>
<script>// 全选$("#b1").on("click", function () {$(":checkbox").prop("checked", true);});// 取消$("#b2").on("click", function () {$(":checkbox").prop("checked", false);});// 反选$("#b3").on("click", function () {$(":checkbox").each(function () {var flag = $(this).prop("checked");$(this).prop("checked", !flag);})});// 按住shift键,批量操作// 定义全局变量var flag = false;// 全局事件,监听键盘shift按键是否被按下$(window).on("keydown", function (e) {
//    alert(e.keyCode);if (e.keyCode === 16){flag = true;}});// 全局事件,shift按键抬起时将全局变量置为false$(window).on("keyup", function (e) {if (e.keyCode === 16){flag = false;}});// select绑定change事件$("table select").on("change", function () {// 是否为批量操作模式if (flag) {var selectValue = $(this).val();// 找到所有被选中的那一行的select,选中指定值$("input:checked").parent().parent().find("select").val(selectValue);}})
</script>
</body>
</html>
View Code

hover事件示例:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="x-ua-compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><title>hover示例</title><style>* {margin: 0;padding: 0;}.nav {height: 40px;width: 100%;background-color: #3d3d3d;position: fixed;top: 0;}.nav ul {list-style-type: none;line-height: 40px;}.nav li {float: left;padding: 0 10px;color: #999999;position: relative;}.nav li:hover {background-color: #0f0f0f;color: white;}.clearfix:after {content: "";display: block;clear: both;}.son {position: absolute;top: 40px;right: 0;height: 50px;width: 100px;background-color: #00a9ff;display: none;}.hover .son {display: block;}</style>
</head>
<body>
<div class="nav"><ul class="clearfix"><li>登录</li><li>注册</li><li>购物车<p class="son hide">空空如也...</p></li></ul>
</div>
<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
<script>
$(".nav li").hover(function () {$(this).addClass("hover");},function () {$(this).removeClass("hover");}
);
</script>
</body>
</html>

hover事件
View Code

实时监听input输入值变化示例:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="x-ua-compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><title>实时监听input输入值变化</title>
</head>
<body>
<input type="text" id="i1"><script src="jquery-3.2.1.min.js"></script>
<script>/** oninput是HTML5的标准事件* 能够检测textarea,input:text,input:password和input:search这几个元素的内容变化,* 在内容修改后立即被触发,不像onchange事件需要失去焦点才触发* oninput事件在IE9以下版本不支持,需要使用IE特有的onpropertychange事件替代* 使用jQuery库的话直接使用on同时绑定这两个事件即可。* */$("#i1").on("input propertychange", function () {alert($(this).val());})
</script>
</body>
</html>

input值变化事件
View Code

事件绑定

  1. .on( events [, selector ],function(){})
  • events: 事件
  • selector: 选择器(可选的)
  • function: 事件处理函数

移除事件

  1. .off( events [, selector ][,function(){}])

off() 方法移除用 .on()绑定的事件处理程序。

  • events: 事件
  • selector: 选择器(可选的)
  • function: 事件处理函数

阻止后续事件执行

  1. return false// 常见阻止表单提交等

注意:

像click、keydown等DOM中定义的事件,我们都可以使用`.on()`方法来绑定事件,但是`hover`这种jQuery中定义的事件就不能用`.on()`方法来绑定了。

想使用事件委托的方式绑定hover事件处理函数,可以参照如下代码分两步绑定事件:

$('ul').on('mouseenter', 'li', function() {//绑定鼠标进入事件$(this).addClass('hover');
});
$('ul').on('mouseleave', 'li', function() {//绑定鼠标划出事件$(this).removeClass('hover');
});

页面载入

当DOM载入就绪可以查询及操纵时绑定一个要执行的函数。这是事件模块中最重要的一个函数,因为它可以极大地提高web应用程序的响应速度。

两种写法:

$(document).ready(function(){
// 在这里写你的JS代码...
})

简写:

$(function(){
// 你在这里写你的代码
})

 

转载于:https://www.cnblogs.com/hulue/p/8671227.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/353896.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java应用程序的令牌认证

建筑物身份管理&#xff0c;包括身份验证和授权&#xff1f; 尝试Stormpath&#xff01; 我们的REST API和强大的Java SDK支持可以消除您的安全风险&#xff0c;并且可以在几分钟内实现。 注册 &#xff0c;再也不会建立auth了&#xff01; 2016年5月12日更新&#xff1a;构建…

mac 远程ftp服务器文件共享,mac 远程ftp服务器文件

mac 远程ftp服务器文件 内容精选换一换云堡垒机配置了FTP/SFTP远程备份&#xff0c;报请检查服务器密码或网络连接情况错误&#xff0c;不能启动远程备份。选择备份具体某一天日志&#xff0c;提示备份正在执行&#xff0c;但远程服务器未接收到该备份文件。原因一&#xff1a;…

ConcurrentHashMap 源码分析

https://weibo.com/6515091862/G9DawzK9fhttps://weibo.com/6515091862/G9D6x1kQrhttps://weibo.com/6515091862/G9Bo8oRCp 1. 前言 终于到这个类了&#xff0c;其实在前面很过很多次这个类&#xff0c;因为这个类代码量比较大&#xff0c;并且涉及到并发的问题&#xff0c;还有…

lambda ::_Lambda项目:迈向多核及超越

lambda ::周一下午在JavaOne 2011的希尔顿旧金山大宴会厅B上做了“ Project Lambda&#xff1a;迈向多核和超越”&#xff08;会议27400&#xff0c;不要与Brian Goetz的同名演讲相混淆&#xff09; 的演示 。大宴会厅关闭&#xff0c;这是一个非常大型的非主题演讲场地&#x…

Java 8:默认方法解析规则

随着Java 8中默认方法的引入&#xff0c;一个类现在可以从多个位置&#xff08;例如另一个类或接口&#xff09;继承相同的方法。 在这种情况下&#xff0c;可以使用以下规则来确定选择哪种方法&#xff1a; 类或超类方法声明始终优先于默认方法 否则&#xff0c;将使用具有最…

Log4j 2使用教程二 【详解】

配置Log4j 2的配置可以通过4种方式中的1种完成&#xff1a;1、通过使用XML&#xff0c;JSON&#xff0c;YAML或属性格式编写的配置文件。 2、以编程方式&#xff0c;通过创建一个ConfigurationFactory和配置实现。 3、以编程方式&#xff0c;通过调用配置界面中公开的API将组件…

firstJava

import java.util.Date;/*** Created by Administrator on 2018/3/30.*/ public class Test {public static void main(String[] args) {System.out.println("强调自主练习");new Date();} } 转载于:https://www.cnblogs.com/fengdaren/p/8675148.html

将Java EE Monolith雕刻成微服务

在介绍了为什么微服务应该由事件驱动的简介博客之后&#xff0c;我想采取一些其他步骤&#xff0c;并在有关博客的同时准备我即将进行的一系列演讲&#xff08;请参阅jBCNconf和Red Hat Summit&#xff0c;旧金山 &#xff09;。 在Twitter christianposta上关注我&#xff0c;…

【终结版】C#常用函数和方法集汇总

C#里面的常用的函数和方法非常重要&#xff0c;然而做题的时候会经常忘记这些封装好的方法&#xff0c;所以我总结一下 C#常用函数和方法集。 【1】C#操作字符串的常用使用方法 在 C# 中&#xff0c;您可以使用字符数组来表示字符串&#xff0c;但是&#xff0c;更常见的做法是…

hadoop hdfs (java api)

简单介绍使用java控制hdfs文件系统 一、注意namenode端访问权限&#xff0c;修改hdfs-site.xml文件或修改文件目录权限 本次采用修改hdfs-site.xml用于测试&#xff0c;在configuration节点中添加如下内容 <property><name>dfs.permissions.enabled</name>&l…

glassfish_重写到边缘–充分利用它! 在GlassFish上!

glassfish现代应用程序开发的一个重要主题是重写。 自从Java Server Faces引入和Java EE 6中新的轻量级编程模型以来&#xff0c;您一直在努力使用漂亮&#xff0c;简单&#xff0c;可添加书签的URL。 PrettyFaces已有一段时间了&#xff0c;即使我可以说服它在3.3.3版本中被称…

BZOJ 4557 JLOI2016 侦查守卫 树形dp

题目链接&#xff1a;https://www.lydsy.com/JudgeOnline/problem.php?id4557 题意概述&#xff1a; 给出一棵树&#xff0c;每个点付出代价w[i]可以控制距离和它不超过d的点&#xff0c;现在给出一些点&#xff0c;问控制这些点的最小代价是多少。 分析: 观察一下数据范围发现…

Java6上开发WebService

Java6上开发WebService 2010-01-23 16:19:00 标签&#xff1a;Java6 WebService 休闲 职场 版权声明&#xff1a;原创作品&#xff0c;如需转载&#xff0c;请与作者联系。否则将追究法律责任。 近日朋友问起Java开发WebService的问题&#xff0c;于是为其写了一份简单说明&…

在spring中该如何使用DTO,以及DTO和Entity的关系

1. DTO是用于将后台的数据结构&#xff08;javaBean&#xff09;转换为对用户友好的表现方式的数据结构&#xff0c;同时也能防止后台数据直接传送到前台而存在的潜在危险。 2. 可以时候要哪个springbot框架提供的转换器接口&#xff1a; org.springframework.core.convert.con…

带有Kafka和ZeroMQ的分布式类星体演员

因此&#xff0c;您已经有了使用actor的精美设计&#xff0c;选择了JVM和Quasar在该主题上的强大而忠实的观点。 所有明智的决定&#xff0c;但是在集群上进行分配时您有什么选择呢&#xff1f; 星系 Galaxy是一个非常酷的选择&#xff1a;快速的内存中数据网格&#xff0c;针…

JAVA中断线程的方法

JAVA中断线程的方法 Thread.stop, Thread.suspend, Thread.resume 和Runtime.runFinalizersOnExit 这些终止线程运行的方法已经被废弃&#xff0c;使用它们是极端不安全的&#xff01; 现在&#xff0c;如果你要安全有效地终止一个线程&#xff0c;应该采用以下这些方法&a…

最常见的Java异常及其对Java开发人员的评价

我知道我说在完成视频之前我不会张贴帖子&#xff0c;但这一直困扰着我。 至于视频的更新&#xff0c;我有些懒散&#xff0c;有些忙碌&#xff0c;但是我已经准备好记录第一集&#xff0c;这是我第一次有机会&#xff0c;而且我不需要太多的编辑。 无论如何&#xff0c;还是今…

日志系统设计

日志系统设计 2009-12-11 00:46:58| 分类&#xff1a; 技术 | 标签&#xff1a; |字号大中小 订阅 一、重要性日志系统在整个系统架构中的重要性可以称得上基础的基础&#xff0c;但是这一点&#xff0c;都容易被大多数人所忽视。因为日志在很多人看来只是printf。在系…

bzoj 1124 [POI2008]枪战Maf 贪心

[POI2008]枪战Maf Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 741 Solved: 295[Submit][Status][Discuss]Description 有n个人&#xff0c;每个人手里有一把手枪。一开始所有人都选定一个人瞄准&#xff08;有可能瞄准自己&#xff09;。然后他们按某个顺序开枪&#x…

核心API最佳实践——JDK日志分级

核心API最佳实践——JDK日志分级 时间:2005-10-29 08:00 来源:网管之家bitsCN.com 字体:[大 中 小]日志&#xff08;Log&#xff09;是什么&#xff1f;字典对其的解释是"对某种机器工作情况或某项任务进展情况的记载"。对于应用系统来说&#xff0c;日志就应该记录应…