jQuery的基础使用方法

jQuery 语法jQuery 语法是通过选取 HTML 元素,并对选取的元素执行某些操作。基础语法: $(selector).action()美元符号定义 jQuery选择符(selector)"查询"和"查找" HTML 元素jQuery 的 action

jQuery 语法

jQuery 语法是通过选取 HTML 元素,并对选取的元素执行某些操作。

基础语法: $(selector).action()

美元符号定义 jQuery 选择符(selector)"查询"和"查找" HTML 元素 jQuery 的 action() 执行对元素的操作

实例:

$(this).hide() - 隐藏当前元素 $("p").hide() - 隐藏所有<p> 元素 $("p.test").hide() - 隐藏所有 class="test"<p> 元素 $("#test").hide() - 隐藏所有 id="test" 的元素

文档就绪事件

jQuery中:

$(document).ready(function(){
    // 执行代码
});

或者

$(function(){
    // 执行代码
});

JavaScript中:

window.onload = function () {
    // 执行代码
}

jQuery 入口函数与 JavaScript 入口函数的区别:

jQuery 的入口函数是在 html 所有标签(DOM)都加载之后,就会去执行。 JavaScript 的 window.onload 事件是等到所有内容,包括外部图片之类的文件加载完后,才会执行。

也就是说,可以这样理解,如果一个图片需要下载很久,那么window.onload事件需要等到图片加载完成了之后才会执行。

jQuery 选择器

在Chrome的Web开发者工具的console中,是可以使用jQuery选择器的,可以完成一些比较骚气的操作。记得以前《英雄联盟》出了一个活动,说是点击一个页面中的某个东西100次,然后就可以领一个皮肤。在这里,打开console,写个定时执行的函数,在函数中通过jQuery选择器选中所需要点击的控件,然后进行点击,一下子就点好了,贼舒服

基于id

$("p"):选取在页面中选取所有 <p>元素 $("#test") :选取id为test的元素 $(".test"):选取所有class为test的元素 $("p.intro"):选取 class 为 intro 的 <p> 元素 $("p#intro"):选取 id 为 intro 的 <p> 元素 $("[href]"):选取带有 href 属性的元素 $("a[target='_blank']"):选取所有 target 属性值等于 "_blank" 的<a>元素,同理还有不等于$(":button"):选取所有 type="button" 的 <input> 元素 和 <button> 元素 $("div p.intro"):选取所有的div元素中,class为intro的<p>元素,同理可换成# $("div , p"):选取所有的div和p元素 $("div > p"):选取所有的父集是div的p元素 $("div + p"):选取所有的跟在div后面的p元素

还可参考css选择器中更多的用法:http://www.runoob.com/cssref/css-selectors.html

jQuery 事件

常见 DOM 事件:

这里写图片描述
// click()点击事件
$("p").click(function(){
  $(this).hide();
});
// dblclick()双击元素
$("p").dblclick(function(){
  $(this).hide();
});
// 鼠标指针穿过元素
$("#p1").mouseenter(function(){
    alert('您的鼠标移到了 id="p1" 的元素上!');
});
// 当鼠标指针离开元素
$("#p1").mouseleave(function(){
    alert("再见,您的鼠标离开了该段落。");
});
// 当鼠标指针移动到元素上方,并按下鼠标按键时
$("#p1").mousedown(function(){
    alert("鼠标在该段落上按下!");
});
// 当在元素上松开鼠标按钮时
$("#p1").mouseup(function(){
    alert("鼠标在段落上松开。");
});
// 当鼠标移动到元素上时,会触发指定的第一个函数(mouseenter);当鼠标移出这个元素时,会触发指定的第二个函数(mouseleave)
$$((""#p1#p ").hover(
    function(){
        alert("你进入了 p1!");
    },
    function(){
        alert("拜拜! 现在你离开了 p1!");
    }
);
// 当元素获得焦点时,发生 focus 事件。当通过鼠标点击选中元素或通过 tab 键定位到元素时,该元素就会获得焦点。
$("input").focus(function(){
  $(this).css("background-color","#cccccc");
});
// 当元素失去焦点时,发生 blur 事件。blur() 方法触发 blur 事件,或规定当发生 blur 事件时运行的函数
$("input").blur(function(){
  $(this).css("background-color","#ffffff");
});

jQuery 效果

显示与隐藏

$("#hide").click(function(){
  $("p").hide();
});
 
$("#show").click(function(){
  $("p").show();
});

$("button").click(function(){
  $("p").hide(1000);
});

语法:

$(selector).hide(speed,callback);
$(selector).show(speed,callback);

可选的 speed 参数规定隐藏/显示的速度,可以取以下值:"slow"、"fast" 或毫秒。 可选的 callback 参数是隐藏或显示完成后所执行的函数名称。

jQuery toggle() 通过 jQuery,您可以使用 toggle() 方法来切换 hide() 和 show() 方法。显示被隐藏的元素,并隐藏已显示的元素

$("button").click(function(){
  $("p").toggle();
});

$(selector).toggle(speed,callback);可选的 speed 参数规定隐藏/显示的速度,可以取以下值:"slow"、"fast" 或毫秒。 可选的 callback 参数是隐藏或显示完成后所执行的函数名称。

淡入淡出

语法:

$(selector).fadeIn(speed,callback);// 用于淡入已隐藏的元素。
$(selector).fadeOut(speed,callback);// 用于淡出可见元素。
$(selector).fadeToggle(speed,callback);// 在 fadeIn() 与 fadeOut() 方法之间进行切换。
$(selector).fadeTo(speed,opacity,callback);// 渐变为给定的不透明度(值介于 0 与 1 之间)。

示例:

$("button").click(function(){
  $("#div1").fadeIn();
  $("#div2").fadeIn("slow");
  $("#div3").fadeIn(3000);
});

$("button").click(function(){
  $("#div1").fadeOut();
  $("#div2").fadeOut("slow");
  $("#div3").fadeOut(3000);
});

$("button").click(function(){
  $("#div1").fadeToggle();
  $("#div2").fadeToggle("slow");
  $("#div3").fadeToggle(3000);
});

$("button").click(function(){
  $("#div1").fadeTo("slow",0.15);
  $("#div2").fadeTo("slow",0.4);
  $("#div3").fadeTo("slow",0.7);
});

滑动

语法:

$(selector).slideDown(speed,callback);
$(selector).slideUp(speed,callback);
$(selector).slideToggle(speed,callback);

Read more

Volcano 与 Kubernetes GPU 调度学习笔记

本笔记系统整理 Volcano 调度器、Kubernetes 调度框架、GPU Device Plugin、HAMi 等云原生 AI 调度领域的核心知识,适合用于学习、复习和工程实践参考。 目录 * 第一部分:Volcano 入门 * 1. Volcano 是什么 * 2. 安装与快速使用 * 3. 核心特性一览 * 第二部分:Volcano 整体架构 * 4. Volcano 解决的核心问题 * 5. 整体架构与数据流 * 6. 三层抽象模型 * 第三部分:Volcano 核心实现原理 * 7. Session 机制 * 8. Gang Scheduling 实现 * 9. Queue 与 DRF 公平调度

容器镜像(4):镜像的常用工具箱

容器镜像(4):镜像的常用工具箱

前几篇在讲多架构镜像时已经用过 skopeo 和 crane 做镜像复制,这篇系统整理这两个工具的完整能力,同时介绍几个日常操作镜像时同样好用的工具。 一、skopeo:不依赖 Daemon 的镜像瑞士军刀 skopeo 的核心价值是绕过 Docker daemon,直接与 Registry API 交互。上一篇用它做镜像复制和离线传输,但它的能力远不止于此。 1.1 安装 # Ubuntu / Debian sudo apt install -y skopeo skopeo --version # skopeo version 1.15.1 1.2 inspect:免拉取检查镜像元数据 docker inspect 需要先把镜像拉到本地,skopeo inspect 直接向 Registry

容器镜像(3):多架构镜像构建

容器镜像(3):多架构镜像构建

一、什么是多架构镜像 1.1 OCI Image Index 上一篇介绍了单平台镜像的结构:一个 Manifest 指向 Config 和若干 Layer blob。多架构镜像在此之上多了一层——OCI Image Index(也叫 Manifest List),是一个轻量的索引文件,把多个单平台 Manifest 组织在一起: $ docker manifest inspect golang:1.22-alpine { "schemaVersion": 2, "mediaType": "application/vnd.oci.image.index.v1+json", "manifests&

容器镜像(2):containerd 视角下的镜像

容器镜像(2):containerd 视角下的镜像

一、为什么需要了解 containerd 如果你只用 docker run 跑容器,从来不关心底层,那可以不了解 containerd。但如果你在用 Kubernetes,或者想真正理解"容器运行时"是什么,containerd 是绕不开的。 事实上,当你执行 docker run 的时候,containerd 早就在后台悄悄工作了——Docker 从 1.11 版本开始,就把核心运行时剥离出来交给 containerd 负责。 1.1 Docker 的架构演变 早期的 Docker(1.10 及之前)是一个"大一统"的单体程序:一个 dockerd