网页设计之Jquery网页设计论文Word文档格式.docx

上传人:b****4 文档编号:17002748 上传时间:2022-11-27 格式:DOCX 页数:12 大小:26KB
下载 相关 举报
网页设计之Jquery网页设计论文Word文档格式.docx_第1页
第1页 / 共12页
网页设计之Jquery网页设计论文Word文档格式.docx_第2页
第2页 / 共12页
网页设计之Jquery网页设计论文Word文档格式.docx_第3页
第3页 / 共12页
网页设计之Jquery网页设计论文Word文档格式.docx_第4页
第4页 / 共12页
网页设计之Jquery网页设计论文Word文档格式.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

网页设计之Jquery网页设计论文Word文档格式.docx

《网页设计之Jquery网页设计论文Word文档格式.docx》由会员分享,可在线阅读,更多相关《网页设计之Jquery网页设计论文Word文档格式.docx(12页珍藏版)》请在冰豆网上搜索。

网页设计之Jquery网页设计论文Word文档格式.docx

它最初由网景公司的BrendanEich设计,是一种动态、弱类型、基于原型的语言,内置支持类。

JavaScript是Sun公司的注册商标。

Ecma国际以JavaScript为基础制定了ECMAScript标准。

JavaScript也可以用于其他场合,如服务器端编程。

完整的JavaScript实现包含三个部分:

ECMAScript,文档对象模型,字节顺序记号。

 

2.Javascript之jQuery技术

2.1Javascript中的jQuery技术

jQuery由美国人JohnResig创建,至今已吸引了来自世界各地的众多Javascript高手加入其team,包括来自德国的J&

ouml;

rnZaefferer,罗马利亚的StefanPetre等等。

jQuery是继prototype之后又一个优秀的Javascrīpt框架。

其宗旨是——WRITELESS,DOMORE,写更少的代码,做更多的事情。

2.2jQuery技术的特点

I.轻量级

经GZip压缩后传输的代码文件仅14KB,未经压缩传送的代码文件仅26KB。

jQuery1.26版时:

档案

档案行数

档案Size

备注

jquery-1.2.6.pack.js

11

31KB

使用Notepad++4.92版开启时,易导致Notepad++程式当掉。

jquery-1.2.6.min.js

32

55KB

jquery-1.2.6.js

3550

98KB

II.链式语法

Varobj=$("

#id1"

).parent().parent().parent().attr("

name"

);

//获取id=id1的元素的三层父节点的name属性

#div1"

).find("

tabletd"

a"

).attr("

href"

//在id=div1的元素下查找table的所有td,然后在第一个td中找到第一个a,然后获取href属性

III.CSS1-3选择器

可以轻松设置,删除,读取css属性

p"

).css("

color"

//取得第一个段落的color样式属性的值。

).addClass("

css1"

//取得第一个段落为并追加class属性

).removeClass("

//取得第一个段落为删除class属性

$("

overflow-y"

"

scroll"

//为div1设置上下滚动条

//$("

overflow-x"

//为div1设置左右滚动条

).css({color:

"

#ff0011"

background:

blue"

});

//取得第一个段落并设置颜色和背景。

IV.跨浏览器

支持InternetExplorer6+、Opera9+、Firefox1.5+、Safari2+

V.Dom选择

可以轻松获取任意dom元素或dom元素封装后的jquery对象。

Varobj=$("

#table1"

//取得ID=table1的dom对象,并返回包装的jquery对象。

#table1a.class1"

//取得ID=table1的元素中的class=class1的所有A标签,并返回包装的jquery对象。

input[name='

name1'

]"

//取得name=name1的所有的input,并返回包装的jquery对象。

VI.Ajax支持

 

$.ajax({

type:

POST"

//提交方式post或者get

url:

test.do"

//访问的地址

data:

name=a&

code=b"

//访问的参数

cache:

false,//是否缓存,

timeout:

1000,//超时时间

global:

false,//禁用全局Ajax事件【只有当我们对ajax实现事件绑定时才有必要用】

success:

function(html){//成功回调函数

//dosomething},

beforeSend:

function(){//提交前执行

//dosomething},

complete:

function(){//提交完成后执行,先用success

//dosomething},

error:

function(XMLHttpRequest,textStatus){//失败后执行

//dosomething}

});

VII.事件注册

可以对任意一个或多个对象注册事件,让画面和事件分离。

给id=btn1的元素注册click事件

$("

#btn1"

).click(function(){

//dosomething});

给class=class1的所有元素注册mouseover事件

.class1"

).mouseover(function(){

//dosomething});

给多个元素注册事件,如:

给id=listTable元素下的所有class=toLink的td注册点击事件

$("

#listTabletd.toLink"

2.3jQuery的核心方法

I.jQuery对象访问

each(callback)

注释:

each是jQuery中的一种循环机制。

一般与this关键字配合使用。

程序中的循环方式有do…while()、while()、for循环以及C#和javaEE中JSTL标签中独有的forEach循环。

jQuery中的each循环与forEach循环类似。

具体使用方法在本节案例中讲述。

Element"

).length;

表示某个对象在HTML页面中的数量,与size用法一致,此方法不带有()。

).size();

表示某个对象在HTML页面中的数量,与length用法一致。

).get();

表示获得某个元素在HTML页面中的集合,以数组方式构建。

).get().reverse();

表示将获取到得dom元素集合构建成的数组进行反向。

).index($("

));

搜索index中所获得的元素在所匹配对象元素中的索引值(从0开始计数),若没有找到则返回-1。

比如有5个div,其中第4个标签的ID是#bar那么$("

div"

#bar"

))所返回的索引值就是3。

II.jQuery插件机制

$.extend

({ 

max:

function(num1,num2){returnnum1>

num2?

num1:

num2;

}

min:

function(num1,num2){returnnum1<

num2?

})

$.fn.extend

check:

function()

{returnthis.each(function(){this.checked=true;

uncheck:

{returnthis.each(function(){this.checked=false;

注释:

此方法也是一种插件的实现方法,其中this表示是调用者当前所指dom对象,比如$("

#abc"

).click(function(){this})这里的this指的就是#abc这个dom对象。

each在上面已经讲解过了。

在此插件方法extend中定义了两个方法分别是check和uncheck。

input[@type=radio]"

).uncheck();

表示将input标签的type属性设置为未选中,其中,中括号中的内容表示如果input的type属性是radio的话,再设置为未选中。

III.多库共存

在同一个页面内调用多种js库,比如即使用jQuery类库又使用ProToType类库,按理说没有问题,但是他们都用到了“$”符号,因此为了避免与其他库产生冲突,可以使用以下两种方法将其区别开来。

jQuery.noConflict();

使用方法,varj=noConflict();

表示j在jQuery中将代替"

$"

符号。

jQuery.noConflict(true);

使用方法,dom.query=jQuery.noConflict(true)则表示将$和jQuery的控制权都交还给原来的库。

比如你想要将jQuery嵌入一个高度冲突的环境。

3.jQuery的具体技术

3.1jQuery的插件开发

一种是类级别的插件开发,即给jQuery添加新的全局函数,相当于给jQuery类本身添加方法。

jQuery的全局函数就是属于jQuery命名空间的函数。

类级别的插件开发最直接的理解就是给jQuery类添加类方法,可以理解为添加静态方法。

典型的例子就是$.AJAX()这个函数,将函数定义于jQuery的命名空间中。

方法:

jQuery.extend(object);

另一种是对象级别的插件开发,即给jQuery对象添加方法。

jQuery.fn.extend(object);

3.2使Ajax变得简单的技术

使用jQuery将使Ajax变得及其简单。

jQuery提供有一些函数,可以使简单的工作变得更加简单,复杂的工作变得不再复杂。

Ajax最常见的用法就是把一块HTML代码加载到页面的某个区域中去。

为此,只需简单地选择所需的元素,然后使用load()函数即可。

清单1.使用Ajax向页面发送数据

$.post('

save.cgi'

{

text:

'

mystring'

number:

23},

function(){

alert('

Yourdatahasbeensaved.'

需要编写一些复杂的Ajax脚本,那么需要用到$.ajax()函数。

那么可以指定xml、script、html或者json,jQuery将自动为回调函数准备合适的结果,这样便可以立即使用该结果。

还可以指定beforeSend、error、success或者complete回调函数,向用户提供更多有关Ajax体验的反馈。

清单2.$.ajax()使Ajax由复杂变简单

$.ajax({

document.xml'

GET'

dataType:

xml'

1000,

function(){

ErrorloadingXMLocument'

},

function(xml){

//dosomethingwithxml}

当success回调函数返回XML文档后,可以使用jQuery检索这个XML文档,其方式与检索HTML文档是一样的。

这样使得处理XML文档变得相当地容易,并且把内容和数据集成到了您的Web站点里面。

清单3.使用jQuery处理XML文档

success:

$(xml).find('

item'

).each(function(){

varitem_text=$(this).text();

$('

<

li>

/li>

'

.html(item_text)

.appendTo('

ol'

3.3为HTML添加动画技术

可以使用jQuery处理基本的动画和显示效果。

animate()函数是动画代码的核心,它用于更改任何随时间变化的数值型的CSS样式值。

比方说,您可以变化高度、宽度、不透明度和位置。

还可以指定动画的速度,定为毫秒或者预定义的速度:

慢速,中速或快速。

下面是一个同时变化某个元素高度和宽度的示例。

请注意,这些参数没有开始值,只有最终值。

开始值取自元素的当前尺寸。

同时我也附加了一个回调函数。

$('

#grow'

).animate({height:

500,width:

500},"

slow"

function(){

Theelementisdonegrowing!

jQuery的内置函数使更多常见的动画更容易完成。

可以使用show()和hide()元素,立即显示或者以特定的速度显示。

还可以通过使用fadeIn()和fadeOut(),或者slideDown()和slideUp()显示和隐藏元素,这取决于您所需要的显示效果。

下面的示例定义了一个下滑的导航菜单。

$(‘#nav’).slideDown(‘slow’);

3.4DOM脚本和事件处理技术

jQuery最擅长的就是简化DOM脚本和事件处理。

遍历和处理DOM非常简单,同时附加、移除和调用事件也十分容易,且不像手动操作那样容易出错。

从本质上说,jQuery可以使DOM脚本中的常用操作变得更加容易。

您可以创建元素并且使用append()函数把它们与其它的一些元素链接到一起,使用clone()复制元素,使用html()设置内容,使用empty()函数删除内容,使用remove()函数删除所有的元素,即便是使用wrap()函数,用其他元素将这些元素包装起来。

通过遍历DOM,一些函数可以用于更改jQuery对象本身的内容。

可以获得元素所有的siblings()、parents()和children()。

还可以选择next()和prev()兄弟元素。

find()函数或许是功能最强大的函数,它允许使用jQuery选择器搜索jQuery对象中元素的后代元素。

如果结合使用end()函数,那么这些函数将变得更加强大。

这个函数的功能类似于undo函数,用于返回到调用find()或parents()函数(或者其它遍历函数)之前的jQuery对象。

3.5释放jQuery选择器的强大能量

jQuery的选择器语法主要是基于CSS3和XPath的。

对CSS3和XPath了解的越多,使用jQuery时就越加得心应手。

有关jQuery选择器的完整列表,包括CSS和XPath。

我们仍然可以在jQuery中使用CSS3选择元素,因为jQuery具备自己的自定义选择器引擎。

比方说,要在表格中的每一个空列中都添加一个横杠,可以使用:

:

empty伪选择器(pseudo-selector):

td:

empty'

).html('

-'

如果需要找出所有不含特定类的元素呢?

CSS3同样提供了一个语法可以完成这个目的,使用:

not伪选择器:

如下代码显示了如何隐藏所有不含required类的输入内容:

input:

not(.required)'

).hide();

与在CSS中一样,可以使用逗号将多个选择器连接成一个。

下面是一个同时隐藏页面上所有类型列表的简单示例:

ul,ol,dl'

XPath是一种功能强大的语法,用于在文档中搜寻元素。

它与CSS稍有区别,不过它能实现的功能略多于CSS。

要在所有复选框的父元素中添加一个边框,可以使用XPath的/..语法:

checkbox/.."

).css('

border'

'

1pxsolid#777'

jQuery中也加入了一些CSS和XPath中没有的选择器。

比方说,要使一个表更具可读性,通常可以在表格的奇数行或偶数行中附加一个不同的类名——也可以称作把表

分段(striping)。

使用jQuery不费吹灰之力就可以做到这点,这需要归功于odd伪选择器。

下面这个例子使用striped类改变了表格中所有奇数行的背景颜色:

table.striped>

tr:

odd'

background'

'

#999999'

我们可以看到强大的jQuery选择器是如何简化代码的。

不论想处理什么样的元素,不管这个元素是具体的还是模糊的,都有可能找到一种方法使用一个jQuery选择器对它们进行定义。

4.基于jQuery几类插件的应用

4.1jQueryui

jQueryUI是以jQuery为基础的开源JavaScript网页用户界面代码库。

包含底层用户交互、动画、特效和可更换主题的可视控件。

可以直接用它来构建具有很好交互性的web应用程序。

jQueryUI应用方向:

(1)jQuery是一个js库,主要提供的功能是选择器,属性修改和事件绑定等。

  

(2)jQueryUI则是在jQuery的基础上,利用jQuery的扩展性,设计的插件。

提供了一些常用的界面元素,诸如对话框、拖动行为、改变大小行为等等。

(3)jQuery本身注重于后台,没有漂亮的界面,而jQueryUI则补充了前者的不足,他提供了华丽的展示界面,使人更容易接受。

既有强大的后台,又有华丽的前台。

4.2jQueryjson

jquery的json插件,json(javascriptobjectnotation)是一种轻量级的数据交换格式,易于阅读和编写,同时也易于机器解析和生成。

json插件提供了一种名为json的ResultType,一旦为某个Action指定了一个类型为json的Result,则该Result无需映射到任何视图资源。

因为JSON插件会负责将Action里的状态信息序列化成JSON格式的数据,并将该数据返回给客户端页面的JavaScript 

json插件应用的代码:

1.添加HTML:

#dictionary'

).load('

a.html'

2.处理JSON数据:

$.getJSON()

JSON数据为:

[{"

term"

BACCHUS"

part"

n."

"

definition"

Aconvenientdeityinventedbytheancientsasanexcuseforgettingdrunk."

quote"

["

Ispublicworship,then,asin,"

ThatfordevotionspaidtoBacchus"

Thelictorsdaretorunusin,"

Andresolutelythumpandwhackus?

],

author"

Jorace"

},

{"

BACKBITE"

v.t."

Tospeakofamanasyoufindhimwhenhecan'

tfindyou."

BEARD"

ThehairthatiscommonlycutoffbythosewhojustlyexecratetheabsurdChinesecustomofshavingthehead."

}]

3.执行脚本:

$.getScript()

4.处理xml数据:

$.get('

d.xml'

function(data){$(data)

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 中医中药

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1