锋利的jQuery系列<一>[通俗易懂]

锋利的jQuery系列<一>[通俗易懂]1.简介jQuery是继Prototype之后又一个优秀的JavaScript库,是一个由JohnResig创建于06年1月的开源项目。现在的jQuery主要包括核心库、UI、插件和jQueryMobile这几大模块。2.配置jQuery环境进入jQuery的官网,下载最新的jQuery库文件。jQuery环境配置:jQuery不需要安装,把下载的jquery.js放到网站的一个公共的位

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

简介

jQuery是继Prototype之后又一个优秀的JavaScript库,是一个由John Resig创建于06年1月的开源项目。现在的jQuery主要包括核心库、UI、插件和jQuery Mobile这几大模块。

一.配置jQuery环境

  1. 进入jQuery的官网,下载最新的jQuery库文件。

  2. jQuery环境配置:
    jQuery不需要安装,把下载的jquery.js放到网站的一个公共的位置,想要在某个页面中用jQuery时,只需要在相关的HTML文档中引入该类库文件的位置即可。

  3. 在页面中引入jQuery,在编写的页面代码中< head>标签内引入jQuery库后,就可以使用jQuery库了,下面是第一个jQuery程序:

<%-- Created by IntelliJ IDEA. User: Administrator Date: 2017/3/4 Time: 10:08 To change this template use File | Settings | File Templates. --%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>导航栏</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="stylesheet" href="../css/default.css" type="text/css" />
<script src="../images/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript"> $(function(){ 
 $(".level1 > a").click(function(){ 
 /** * 当鼠标点击到a元素(它是class含有level1的子元素)的时候,给其添加一个名为current的class, * 然后将紧邻其后面的元素显示出来,同时将它的父辈元素的同辈元素内部的子元素<a>都去掉一个名为 * current的class,并且将紧邻它们后面的元素都隐藏。 */ $(this).addClass("current") .next().show() .parent().siblings().children("a").removeClass("current") .next().hide(); return false; }); }); </script>
</head>
<body>
<div class="box">
<ul class="menu">
<li class="level1">
<a href="#none">衬衫</a>
<ul class="level2">
<li><a href="#none">短袖衬衫</a></li>
<li><a href="#none">长袖衬衫</a></li>
<li><a href="#none">短袖T恤</a></li>
<li><a href="#none">上袖T恤</a></li>
</ul>
</li>
<li class="level1">
<a href="#none">卫衣</a>
<ul class="level2">
<li><a href="#none">开襟卫衣</a></li>
<li><a href="#none">套头卫衣</a></li>
<li><a href="#none">运动卫衣</a></li>
<li><a href="#none">时尚卫衣</a></li>
</ul>
</li>
<li class="level1">
<a href="#none">裤子</a>
<ul class="level2">
<li><a href="#none">短裤</a></li>
<li><a href="#none">休闲裤</a></li>
<li><a href="#none">牛仔裤</a></li>
<li><a href="#none">免烫卡其裤</a></li>
</ul>
</li>
</ul>
</div>
</body>
</html>

Jetbrains全家桶1年46,售后保障稳定

default.css

/* reset */
body{ 
margin:0;padding:0 0 12px 0;font-size:12px;line-height:22px;font-family:"\5b8b\4f53","Arial Narrow";background:#fff;}
form,ul,li,p,h1,h2,h3,h4,h5,h6{ 
margin:0;padding:0;}
input,select{ 
font-size:12px;line-height:16px;}
img{ 
border:0;}
ul,li{ 
list-style-type:none;}
a { 
color:#00007F;text-decoration:none;}
a:hover { 
color:#bd0a01;text-decoration:underline;}
.box { width: 150px; margin: 0 auto; }
.menu{ overflow:hidden; border-color: #C4D5DF; border-style: solid; border-width: 0 1px 1px; }
/* lv1 */
.menu li.level1 a{ display: block; height: 28px; line-height: 28px; background:#EBF3F8; font-weight:700; color: #5893B7; text-indent: 14px; border-top: 1px solid #C4D5DF; }
.menu li.level1 a:hover{ 
text-decoration:none;}
.menu li.level1 a.current{ 
background:#B1D7EF;}
/* lv2 */
.menu li ul{ 
overflow:hidden;}
.menu li ul.level2{ 
display:none;}
.menu li ul.level2 li a{ display: block; height: 28px; line-height: 28px; background:#ffffff; font-weight:400; color: #42556B; text-indent: 18px; border-top: 0px solid #ffffff; overflow: hidden; }
.menu li ul.level2 li a:hover{ color:#f60; }

上面代码中:

$(document).ready(function(){
...
});

的作用类似于JavaScript中的window.onload方法,不过与它还是有些区别:

  • window.onload执行时机:必须等待网页中所有内容加载完毕后,才能执行;$(document).ready()执行时机是网页中所有的DOM结构绘制完毕后就执行,可能DOM元素关联的东西并没有加载完。
  • window.onload不能同时编写多个;$(document).ready()可以。
  • window.load没有简写的形式,$$(document).ready(function(){ … })可以简写为$(function(){ … })。

需要强调的是,在jQuery库中, $$符号就是jQuery的一个简写形式,例如$ (“#foo”)和jQuery(“#foo”)是等价的。

二 . jQuery对象和DOM对象

DOM对象即文档对象模型,每一份DOM都可以表示成一棵树。构建一个非常基本的网页。

jQuery对象就是jQuery包装DOM对象后产生的对象。

jQuery对象时jQuery独有的。如果一个对象时jQuery对象,那么就可以使用jQuery里的语法。例如:

//获取id为foo的元素内html代码。
$("#foo").html();
//这段代码等价于:
document.getElmentById("foo").innerHTML;

在jQuery对象中无法使用DOM对象的任何方法,同样DOM对象也不能使用jQuery里的方法。

注意:

用#id作为选择符取得的是jQuery对象而并非document.getElmentById(“id”)所得到的DOM对象,两者并不等价。注意分清jQuery对象和DOM对象。

三 . jQuery对象和DOM对象的互相转换

  • jQuery种提供两种将一个jQuery对象转换成DOM对象的方法:[index]和get(index)。
//[index]方式:
var $cr = $("#cr");
var cr = $cr[0];
alert(cr.checked)
//get(index)方式:
var $cr = $("#cr");
var cr = $cr.get(0);
alert(cr.checked)

注意:平时用到的jQuery对象都是通过$()函数创造出来的,这个函数就是一个jQuery对象的制造工厂。

四 . jQuery对象和DOM对象实例研究

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>论坛注册</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<!--引入jQuery库-->
<script src="../images/jquery.min.js" type="text/javascript"></script>
<!--DOM方式判断复选框是否被选中-->
<!-- <script type="text/javascript"> $(function(){ //等待dom元素加载完毕 var $cr = $("#cr"); //jQuery对象 var cr = $cr[0]; //DOM对象,或者$cr.get[0] $cr.click(function(){ if(cr.checked){ alert("感谢你的支持!你可以继续操作!"); } }); }); </script>-->
<!--jQuery方式-->
<script type="text/javascript"> $(function () { 
 //等待dom元素加载完毕 var $cr = $("#cr"); //jQuery对象 $cr.click(function(){ 
 if($cr.is(":checked")){ //jQuery方式判断 alert("感谢你的支持!你可以继续操作!"); } }); }); </script>
</head>
<body>
<input type="checkbox" id="cr"/> <label for="cr">我已经阅读了上面制度.</label>
</body>
</html>

上面例子简单演示了DOM对象和jQuery对象的不同,但最终效果是一样的。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/234726.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 解决Destroying ProtocolHandler [“ajp-apr-8009“]

    解决Destroying ProtocolHandler [“ajp-apr-8009“]今天刚开始调JSP网站,还好好的,后来中间注销了电脑一次,再打开调试它,就遇到了这个无法启动服务器的问题:DestroyingProtocolHandler[“ajp-apr-8009”]上网百度了下,说是端口号被占用了。解决办法:1、查看端口号被占用情况:步骤:调出命令窗:开始->运行->cmd,然后输入命令:netstat-ano如图(记下来占用该

    2022年10月21日
  • python自动炒股软件下载_python自动股票交易软件

    python自动炒股软件下载_python自动股票交易软件获取数据是数据分析中必不可少的一部分,而网络爬虫是是获取数据的一个重要渠道之一。鉴于此,我拾起了Python这把利器,开启了网络爬虫之路。本篇使用的版本为python3.5,意在抓取证券之星上当天所有A股数据。程序主要分为三个部分:网页源码的获取、所需内容的提取、所得结果的整理。一、网页源码的获取很多人喜欢用python爬虫的原因之一就是它容易上手。只需以下几行代码既可抓取大部分网页的源码。imp…

  • java如何将字符串转化为日期_java如何将字符串转为日期「建议收藏」

    java如何将字符串转化为日期_java如何将字符串转为日期「建议收藏」一、概述将Java中字符串“2010年1月2日”格式的转换为日期的最佳方法是什么?最终,我想将月份,日期和年份分解为整数,以便可以使用Datedate=newDate();date.setMonth()..date.setYear()..date.setDay()..date.setlongcurrentTime=date.getTime();将日期转换为时间。二、详解java.u…

    2022年10月31日
  • realsense深度图像保存方法[通俗易懂]

    realsense深度图像保存方法[通俗易懂]一般使用realsense时会保存视频序列,当保存深度图像时,需要注意保存的图像矩阵的格式,不然可能造成深度值的丢失。在众多图像库中,一般会使用opencv中的imwrite()函数进行深度图像的保存。一般深度图像中深度值的单位是mm,因此一般使用np.uint16作为最终数据格式保存。例子:importnumpyasnpimportcv2deffun1(…

  • 手动实现一维离散数据小波分解与重构

    手动实现一维离散数据小波分解与重构前言本文集中前面主要介绍了离散数据的傅里叶变换,并且得到了较好的效果!那既然有了傅里叶变换这个工具,为什么还需要小波变换呢?因为:傅里叶变换只能告诉你原始信号中有哪些频率,但不能告诉你这些频率的信号出现在什么时间!也就说明:如果信号是”时变”的(频率随着时间是改变的),那么单纯用傅里叶变换所能反映的信息就十分有限了!因此,针对时变信号,我们使用小波变换。图1展示”时变信号”与”时不变信号”区别:图1:时不变信号与时变信号时不变与时变的区别,看下面的实现的代码就很轻易理解:x=0:0.001:1

  • 如何用phpmyadmin导入大容量.sql文件,直接使用cmd命令进行导入

    如何用phpmyadmin导入大容量.sql文件,直接使用cmd命令进行导入

    2021年10月15日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号