jquery语法入门(一)

   <序言>之前一直从事flash页游开发工作,最近项目也不是那么忙了,想静下心来学一些前端的技能,大学的时候就耳闻过jquery的强大和精简。废话不多说直接开始学习。学习资料太多了,笔者使用最基本的为w3school学习,并且整理了以下的一些笔记和学习心得,希望一起学习,功能进步,如果能帮到读者,也是很开心的。

   1.问题:javascript标签怎样引入jquery?

      方案a.使用公开的站点jquery库引入,如:使用google的“http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js“,也可以使用IE、百度,搜狐上的jquery资源,笔者推荐使用jquery官方的”http://code.jquery.com/jquery-latest.js“,因为可以动态获取最新的jquery.js库

     方案b.放在当前站点的资源里。这种方式会给服务器的访问流量造成压力,但是可以稳定的引入jquery,而不会因为a方案的站点故障而造成无法引入的问题。

     方案c.优先使用a方案引入,b方案备用,在a方案引入失败则使用b方案的当前站点引入。

   <javascript src=".....jquery.js"></javascript>

  2.问题:jquery怎样选取文档元素或者操作对象?

     选择语法比较复杂一般使用1.$(obj):直接选取对象eg.$(document),2.$("prefixName")选取标签名来选取所有标签eg.$(p): 3.可以通过标签属性进行条件选择来选取指定的元素$("prefixName.propName"),eg:$("p.className"),$("p#idName"), 4.使用Xpath来选择带有指定属性的元素eg:$("[href]")选择所有带有href的元素,可以通过xpath来限定属性特征eg.href='compareValue': or href!='compareValue' or href$='endValue'.5.css选择.css("propertyName","propertyValue")eg:$("perfixName.className").css("propertyName", "propertyValue")。

  3.问题:jquery怎样响应用户操作html元素的?

    jquery使用事件机制来响应用户的操作,如用户点击一个按钮,就会派发点击事件,监听器监听到此事件就会调用事件监听器注册的处理函数。很显然,事件机制需要三个元素:a.事件源对象eg.按钮或者html的某个显示元素对象。所以事件监听的处理应该是在html文档加载完毕后也就是在document.onReady函数里。b.事件对象,携带事件处理需要的数据,因为对jquey的了解还是初步的暂时还不知道jquery怎么来实现事件处理器需要的数据,估测是使用全局或者管理器来缓存的数据共享来实现。c.事件处理器,即自定义的处理函数来响应用户的操作,如按钮被点击后需要执行的行为。因为事件处理的函数可能是公用的(一般情况确实如此),所以为了维护和扩展的需要,应该把时间处理器集中的一个文件里而不是散落在对应的hmtl的head中。  常用的事件函数:$(document).ready();$(selectore).click();$(selector).dbclick();$(selectore).mouseover();$(selectore).focus()

  总结:1.jquery代码应该置于事件处理函数中2.所有事件处理函数应该在文档就绪事件处理函数中3.jquery代码置于单独的js文件中4.重命名jquery eg.va kzj = jQuery.noConflict();

4.问题:怎样属性jquery的api?

   可以大概的看一下jquery的函数,初步了了解有哪些函数,在遇到应用环境的时候应该有意识到jquery有这样的一个接口,然后通过网上搜索资料进一步学习和使用,这样多应用一次就会使用了。另一种是系统性的学习jquery的api,针对每一个函数可以写一些小demo,然后不断迭代。其实任何一个框架无法是提供一些基本的接口,但是利用这些接口可以做出负责的应用或者绚丽的效果,而一个好的框架只是负责性能和对外扩展。让我们一步步学习了解一下jquery这个框架的基本接口:如hide()与show()以及toggle(),隐藏和显示以及切换函数。使用方法是:$(selector).hide(speed, callback),speed:持续多久,callback是speed后调用的函数,看到这些我们应该同理知道show以及toggle()也应该有相同的参数。大笑学到此处,我们是不是该提出一个问题,框架的api设计。。。。

5.问题:jquery框架与服务器框架的差异?

      在学习的过程中,我们会分析出框架应该有两种接口,一种是显示对象的api还有一种是数据的api。如果是服务器框架,那么应该是没有显示对象的接口的,前端框架因该有显示对象和数据的api,那么我们再想一下,显示api应该有哪些功能或者特性呢?笔者以flash框架为例,flash框架中显示对象是集中在display包中,这个包中通过继承extends以及接口implements来实现的,具体的每个sprite都是位置信息,是否可显示以及scale等等显示元素本身所具备的属性。那么jquery的显示接口也应该是提供一些接口来操作html元素,如hide和show来控制元素的隐藏和显示,位置改变也应该有对应的接口,后续我们可以验证。奋斗我们再分析一下数据api,数据api提供的应该是对数据的操作,那么数据涉及的操作有哪些呢?和显示对象相比较,我们会发现数据对象会简单的多,无法是增删查改,以及对自定义对象的属性的操作,后者是针对业务逻辑而扩展的框架api。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值