java web使用jquery,JAVA_Web_JQuery

简介:

jquery 全称 javaScript Query.是js的一个框架。本质上仍然是js。特点:支持各种主流的浏览器、使用特别简单、拥有便捷的插件扩展机制和丰富的插件。

一、JQuery内部封装原理介绍:匿名闭包。

下面这两行代码是jquery包下的已经封装的代码,因为window我们可以省略不写,因此我们可以直接使用 $ 符号。

// Expose jQuery to the global object

window.jQuery = window.$ = jQuery;

匿名自调用,即使用闭包,将函数要执行的数据一次性挂载到window对象下。其推导过程如下:

function fn1(){

console.log("函数");

};

// 调用函数

fn1();

// fn1时函数名,它包含函数的代码,函数的代码就是“function(){console.log("函数");}”,用括号包裹,替换fn1,得:

(function (){

console.log("函数");

})();

因此对上面函数形参传进去obj,下面的实参传进去window对象,即为下面的表示形式

(function(obj){

//var bjsxt={};

obj.test=function(){

alert("工厂");

}

alert("匿名自调用");

})(window)

因此实现了由局部变量到全局变量window的一个转变。注:因为window是一个全局变量,而且不能够被修改和重定义。

二、jquery基本选择器介绍:id,标签,类,组合

注意:id选择器要加#、标签选择器什么都不加、类选择器要加“ . ”、组合选择器就是直接写多个,中间用逗号隔开。

下面是一些子选择器,层级选择器,等具体哪个可以去查找对应的API

//测试子选择器

function testChild(){

var inps=$("#showdiv>input");

alert(inps.length);

}

//测试层级选择器

function testCj(){

var inp=$("input:first");

alert(inp.val());

}

function testCj2(){

var tds=$("td:not(td[width])");

alert(tds.html());

}

三、jquery操作元素属性

他封装了set/getattribute方法,这里面对应的是attr ,同样存在一个问题:不可以获取实时的input text框中的内容,这个时候要使用value 这里对应的是val 方法

function testField(){

//获取元素对象

var uname=$("#uname");

//获取

alert(uname.attr("type")+":"+uname.attr("value")+":"+uname.val());

}

function testField2(){

//获取元素对象

var uname=$("#uname");

uname.attr("type","button");

}

四、jquery操作元素内容

和js中的是一样的也是一个innerHTML 和一个innerText,只不过是名字不同。

jquery 操作元素内容学习:

获取元素对象

1、获取

对象名.html()//返回当前对象的所有内容,包括HTML标签。

对象名.text()//返回当前对象的文本内容,不包括HTML标签

2、修改

对象名.html("新的内容")//新的内容会将原有内容覆盖,HTML标签会被解析执行

对象名.text("新的内容")//新的内容会将原有内容覆盖,HTML标签不会被解析

五、jquery操作元素样式 css

js中的是直接对象.style.color=***;这里可以调用css()方法加上JSON来使用,

六、js操作文档结构

将指定内容添加到对象内部、外部。等等,可以看API手册

操作文档结构学习:

获取元素对象

1、内部插入

append("内容") 将指定的内容追加到对象的内部

appendTo(元素对象或者选择器) 将制定的元素对象追加到指定的对象内容

prepend() 将指定的内容追加到对象的内部的前面

prependTo() 将制定的元素对象追加到指定的对象内容前面

2、外部插入

after 将指定的内容追加到指定的元素后面

before 将指定的内容追加到指定的元素前面

insertAfter 把所有匹配的元素插入到另一个、指定的元素元素集合的后面

insertBefore 把所有匹配的元素插入到另一个、指定的元素元素集合的前面。

3、包裹

4、替换

5、删除

empty()

七、事件机制的学习

特点:jquery可以对事件添加,并且同一个事件可以添加多种效果,而js只能添加一种,添加多种的话会覆盖。

注:页面载入事件:js中式onload在这里不是使用bind而是使用ready方法。。可以看下面代码!

//js动态添加事件

function testThing(){

//获取元素对象

var btn=document.getElementById("btn2");

//添加事件

btn.οnclick=function(){

alert("我是js方式");

}

}

//jquery

//测试bind绑定

function testBind(){

$("#btn2").bind("click",function(){alert("我是bind绑定单击事件")});

$("#btn2").bind("click",function(){alert("我是bind绑定单击事件2w2222")});

}

//测试unBind解绑

function testUnfBind(){

$("#btn3").unbind("click");

}

//测试one

function testOne(){

$("#btn3").one("click",function(){alert("我是one")});

}

//页面载入事件

//js方式

window.οnlοad=function(){

alert("我是js方式页面加载");

}

window.οnlοad=function(){

alert("我是js方式页面加载2222");

}

//jquery方式

$(document).ready(function(){

alert("我是jQuery");

})

$(document).ready(function(){

alert("我是jQuery22222");

})

八、动画效果:

本质就是使用jquery的 hide show属性来修改div的显示时间,同时加上css的display:none等属性

function test(){

$("#showdiv").show(3000);

$("#div01").hide(3000);

/*$("#showdiv").hide(3000);

$("#div01").show(3000);*/

$("div").toggle(3000);

$("#showdiv").slideDown(3000);

$("#div01").slideUp(2000);

$("#showdiv").fadeOut(3000);

}

总结

jquery就是对js的封装,方便我们调用,在了解了js之后学起来非常块,对于一个后端开发者来说,了解还是必须的。

在使用jquery实现一些动态效果的时候,可以灵活的运用标志位,比如鼠标点击事件,点击一次flag改变一次。可以用来达到某种动态效果的判断条件。

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

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

相关文章

python语法学习_Python学习1——语法

Python语法包括了行、缩进、注释、标识符、保留关键字等方面。打印语句:>>> print(hello,world!)hello,world!输入语句:>>> input(请输入你的名字:)请输入你的名字:哈哈#”哈哈”是你自己输入的名字哈哈 #打印出…

java 两个页面传递数据,请问Cookie怎么在两个页面间传递数据?

参考代码如下://如果请求的Cookie对象为空if (Request.Cookies["userCookie"] null){//创建一个Cookie对象HttpCookie userCookie new HttpCookie("userCookie");//给对象赋值userCookie.Values["userName"] userInfo.UserName.ToS…

优化matlab作业,现代设计优化算法MATLAB实现

开篇语前阵子做现代设计方法的时候,发现网上很是缺乏这种作业形式的简易算法实现,所以特地来简书写一篇。有两份,一份是我的(说来惭愧,我的大部分都是在网上找的代码,然后在自己的电脑上跑一次,跑出来了就行…

怎样用python画玫瑰花的简笔画_玫瑰花简笔画素描作品图片

玫瑰原产是中国。在古时的汉语,“玫瑰”一词原意是指红色美玉。玫瑰花这么漂亮,素描怎么画得好看呢?你知道玫瑰花的简笔画素描是怎样的吗?今天先和学习啦小编一起欣赏这些玫瑰花简笔画素描图片,希望你会有所收获的。玫瑰花简笔画素描图片欣…

多因子选选股MATLAB代码,金工研报:利用卷积神经网络进行多因子选股

首先,我们先来看一下通过卷积神经网络选股模型的整体流程,然后再根据每一步流程进行介绍,具体如下图所示:1、数据获取用于历史回测数据来自所有A股股票,其中剔除了ST股以及上市3个月的股票,另外&#xff0c…

python list tuple 打包 解包_python的打包与解包

python的*与**,在函数的定义与调用过程中,有着不同的作用打包参数:一、函数定义时,形参前加*号(如:*args):收集实参中所有的位置参数,打包成新元组并将该元组赋值给args变量实参位置参数&#x…

python 成员函数 泛型函数_【一点资讯】白学这么多年 Python?连泛型函数都不会写? www.yidianzixun.com...

泛型,如果你尝过java,应该对他不陌生吧。但你可能不知道在 Python 中(3.4 ),也可以实现 简单的泛型函数。在Python中只能实现基于单个(第一个)参数的数据类型来选择具体的实现方式,官方名称 是single-dispatch。你或许听不懂&…

matlab bad apple,【bad apple】matlab制作矩阵苹果~

有屏幕的地方就有bad apple那么作为一名工科生,熟练的操♂作马桶萝卜(matlab)是一项基本技能下面开始讲解如何用matlab制作别具一格的“矩阵苹果”~实验环境matlab R2018a原版bad apple视频技术要求可以即时演算图形可以将处理后的每帧图形合并成新的视频先上代码%t…

服务器ip直接访问php怎么写,php - 如何实现用公网ip访问到服务器上的网页?

服务器系统是Windows Server 2012 R2,已经部署了IIS、PHP和MySQL,能够在云服务器上通过localhost打开php网页,(放在服务器wwwroot上的index.php)已在ISS管理器中添加网站,但编辑网站绑定时,在ip地址中填入了服务器的公…

vb6 打印选项对话框_图纸打印次数太多,不知道哪次才是最新的?用打印戳记区分效果好...

原创:就说我在开发区使用AutoCAD从事设计工作的朋友们不知道有没遇到过这种情况:图纸在反复修改打印的过程中,由于图纸内容高度相似,往往搞不清究竟哪个才是最新版本的图纸了。这种情况下,细致入微地去核对非常麻烦&am…

安卓文本编辑器php cpp,用安卓原生控件封装一个简易的富文本编辑器

最近接到项目需求:移动端原生写一个富文本编辑器。 ( ⊙ o ⊙ )从没遇到过富文本要用原生写的,然后就查阅各种资料。然后结合自己的思路:其实安卓的富文本编辑器就是一个 “容器”。那么接下来我就带给大家说一说我自定义这个富文本编…

python和nltk自然语言处理书评_Python和NLTK自然语言处理

模块1 NLTK基础知识第 1章 自然语言处理简介 31.1 为什么要学习NLP 41.2 从Python的基本知识开始 71.2.1 列表 71.2.2 自助 81.2.3 正则表达式 91.2.4 词典 111.2.5 编写函数 111.3 NLTK 131.4 试一试 181.5 本章小结 18第 2章 文本的整理和清洗 192.…

vue tab切换_iviewUITabs选项卡切换组件

概述 选项卡切换组件,常用于平级区域大块内容的的收纳和展现。源码地址:https://github.com/iview/iview/tree/2.0/src/components/tabs使用: 标签一的内容标签二的内容标签三的内容标签二的内容在源码的tabs文件下有三个文件:ind…

java biginteger 比较大小,java – 打印非常大的BigIntegers

我试图找出与Java 7 x64中的BigIntegers相关的以下问题.我试图计算一个极高功率的数字.代码如下,然后是问题描述.import java.math.BigInteger;public class main {public static void main(String[] args) {// Demo calculation; Desired calculation: BigInteger("4096&…

paypal创建订单后怎么获得id_5步创建Facebook商店(最新版教程)学习如何在Facebook上卖货...

请按照以下步骤设置Facebook商店:步骤1:转到您的Facebook页面并配置Shop页面。步骤2:设置您的商店详细信息。步骤3:配置付款。步骤4:将产品添加到您的Facebook商店。步骤5:管理您的订单。步骤6:…

php 网络图片 转本地,PHP将Base64图片转换为本地图片并保存

PHP将Base64图片转换为本地图片并保存/*** [将Base64图片转换为本地图片并保存]* param [Base64] $base64_image_content [要保存的Base64]* param [目录] $path [要保存的路径]*/function base64_image_content($base64_image_content,$path){//匹配出图片的格式if (preg_matc…

创建索引名称已由现有对象使用_Excel编程周末速成班第3课:Excel对象模型

学习Excel技术,关注微信公众号:excelperfect导语:为了帮助想要快速学会Excel VBA的朋友,特以《Excel Programming Weekend Crash Course》这本书为基础,开始整理一系列资料,在完美Excel社群上分享。一共有3…

php修改htpasswd,用来解析.htpasswd文件的PHP类

.htpasswd 文件示例:user1:{SHA}kGPaD671VNU0OU5lqLiN/h6Q6acuser2:{SHA}npMqPEX3kPQTox/ZckHDrIcQIuser3:{SHA}q1Fh2LTUjjkncp11m0M9WUH5Zrwclass Htpasswd {private $file ;private $salt AynlJ2H.74VEfI^BZElc-Vb6G0ezE9a55-Wj;private function write($pairs …

socket用起始码分割_常用条码Code128码及EAN13码的介绍

在条码打印软件中,设计条码标签时经常用到的码制是Code128码和EAN13码。因为这两种码制比较贴近我们的生活。比如:我们去超市购物,商品上贴的条码标签都是EAN13码,因为EAN13码多用于零售产品包装。而code128码多用于工厂产线&…

matlab在c盘有缓存文件夹吗,win10如何清除C盘缓存文件-win10清除C盘缓存的方法 - 河东软件园...

在电脑的使用过程中我们会发现磁盘的容量会不断减小,更多时候其他磁盘还有很多剩余空间,C盘的存储空间就已经达到极限了。其实在系统的升级和软件的下载中很多文件就会默认储存在C盘,时间久了以后,C盘不仅有软件文件,还…