jquery基础知识第一讲之认识jquery


Posted in Javascript onMarch 17, 2016

jQuery是一个优秀的JavaScript库,它凭借简洁地语法和跨平台的兼容性,极大地简化了开发人员遍历HTML文档,操作DOM,处理事件,执行动画和开发Ajax操作。

jQuery优势:

1.轻量级

2.强大的选择器

3.出色的DOM操作的封装

4.可靠的事件处理机制

5.完善的Ajax

6.不污染顶级变量

7.出色的浏览器兼容性

8.链式操作方式

9.隐式迭代

10.行为层与结构层分离

11.丰富的插件支持

12.完善的文档

13.开源

(1)编写简单的jQuery代码:

注:$ 就是jQuery的简写形式。

<!-- 引入 jQuery -->
  <script src="../scripts/jquery-1.3.1.js" type="text/javascript"></script>
  <script type="text/javascript">
    $(document).ready(function () {   //等待DOM元素加载完毕.(可能DOM元素关联的文件没有加载完)
      alert("Hello World!");     //弹出一个框
    });


 $(document).ready(function () {   //可以同时编写多个
      alert("Hello again!");
    });

    $(function () {           //简写形式
      alert("Hello jQuery!");
    });
  </script>

(2)jQuery的代码风格

注:链式操作。

1、对同一个对象不超过3次操作的,可以写成一行。

             

2、对于同一个对象操作较多的,建议每行写一个操作。

3、对于多个对象的少量操作,可以每个对象写一行,如果涉及子元素,可以考虑适当的缩进。

4、对于多个对象的较多操作,可以结合2,3条。

添加必要的注释。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>1-4-3</title>
<style type="text/css">
#menu { 
  width:300px; 
}
.has_children{
  background : #555;
  color :#fff;
  cursor:pointer;
}
.highlight{
  color : #fff;
  background : green;
}
div{
  padding:0;
}
div a{
  background : #888;
  display : none;
  float:left;
  width:300px;
}
</style>
<!-- 引入 jQuery -->
<script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script>
<script type="text/javascript">
//等待dom元素加载完毕.
$(document).ready(function(){
  $(".has_children").click(function(){
    $(this).addClass("highlight")      //为当前元素增加highlight类
      .children("a").show().end()      //将子节点的a元素显示出来并重新定位到上次操作的元素
    .siblings().removeClass("highlight")    //获取元素的兄弟元素,并去掉他们的highlight类
      .children("a").hide();        //将兄弟元素下的a元素隐藏
  });
});
</script>
</head>
<body>
<div id="menu">
  <div class="has_children">
    <span>第1章-认识jQuery</span>
    <a>1.1-JavaScript和JavaScript库</a>
    <a>1.2-加入jQuery</a>
    <a>1.3-编写简单jQuery代码</a>
    <a>1.4-jQuery对象和DOM对象</a>
    <a>1.5-解决jQuery和其它库的冲突</a>
    <a>1.6-jQuery开发工具和插件</a>
    <a>1.7-小结</a>
  </div>
  <div class="has_children">
    <span>第2章-jQuery选择器</span>
    <a>2.1-jQuery选择器是什么</a>
    <a>2.2-jQuery选择器的优势</a>
    <a>2.3-jQuery选择器</a>
    <a>2.4-应用jQuery改写示例</a>
    <a>2.5-选择器中的一些注意事项</a>
    <a>2.6-案例研究——类似淘宝网品牌列表的效果</a>
    <a>2.7-还有其它选择器么?</a>
    <a>2.8-小结</a>
  </div>
  <div class="has_children">
    <span>第3章-jQuery中的DOM操作</span>
    <a>3.1-DOM操作的分类</a>
    <a>3.2-jQuery中的DOM操作</a>
    <a>3.3-案例研究——某网站超链接和图片提示效果</a>
    <a>3.4-小结</a>
  </div>
</div>
</body>
</html>

(3)DOM对象与jQuery对象

DOM(Document Object Model,文档对象模型),每一个DOM都可以表示成一棵树。JavaScript中的getElementById或者getElementByTagName来获取元素节点,这样的DOM元素就是DOM对象。

jQuery对象是通过jQuery包装DOM对象后产生的对象。jQuery对象是jQuery独有的,可以使用jQuery中的方法,但不能使用DOM对象的方法。

注:jQuery对象都是通过$()函数制造出来的,$()函数就是一个jQuery对象的制造工厂。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>1-4</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <!-- 引入 jQuery -->
  <script src="../scripts/jquery-1.3.1.js" type="text/javascript"></script>
  <script type="text/javascript">
    //等待dom元素加载完毕.
    $(document).ready(function () {
      var domObj = document.getElementsByTagName("h3")[0];  // Dom对象
      var $jQueryObj = $(domObj);     //jQuery对象
      alert("DOM对象:" + domObj.innerHTML);  
      alert("jQuery对象:" + $jQueryObj.html());
    });
  </script>
</head>
<body>
  <h3>例子</h3>
  <p title="选择你最喜欢的水果.">你最喜欢的水果是?</p>
  <ul>
    <li>苹果</li>
    <li>橘子</li>
    <li>菠萝</li>
  </ul>
</body>
</html>

DOM对象与jQuery对象可以相互转换,案例如下:
1.DOM对象方式

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title>1-6-2</title>
  <!-- 引入 jQuery -->
  <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script>
  <script type="text/javascript">
    //等待dom元素加载完毕.
    $(document).ready(function () {
      var $cr = $("#cr");     //jQuery对象
      var cr = $cr.get(0);    //DOM对象获取 2种方式 $cr[0] 或者 $cr.get(0)
      $cr.click(function () {
        if (cr.checked) {    //DOM方式判断
          alert("感谢你的支持!你可以继续操作!");
        }
      })
    });
  </script>
</head>
<body>
  <input type="checkbox" id="cr" />
  <label for="cr">我已经阅读了上面制度.</label>
</body>
</html>

2.jQuery对象方式

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title>1-6-1</title>
  <!-- 引入 jQuery -->
  <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script>
  <script type="text/javascript">
    //等待dom元素加载完毕.
    $(document).ready(function () {


 var cr = document.getElementById("cr");   //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>

以上就是关于jquery学习的第一课,希望大家继续关注。

Javascript 相关文章推荐
js技巧--转义符&quot;\&quot;的妙用
Jan 09 Javascript
探讨JQUERY JSON的反序列化类 using问题的解决方法
Dec 19 Javascript
再谈Jquery Ajax方法传递到action(补充)
May 12 Javascript
浅谈JavaScript中Date(日期对象),Math对象
Feb 05 Javascript
Javascript中的方法链(Method Chaining)介绍
Mar 15 Javascript
谈谈impress.js初步理解
Sep 09 Javascript
使用JavaScript判断用户输入的是否为正整数(两种方法)
Feb 05 Javascript
Vue.js组件tab实现选项卡切换
Mar 23 Javascript
Vuejs实现带样式的单文件组件新方法
May 02 Javascript
Egg.js 中 AJax 上传文件获取参数的方法
Oct 10 Javascript
layui的数据表格+springmvc实现搜索功能的例子
Sep 28 Javascript
Vue开发中常见的套路和技巧总结
Nov 24 Vue.js
Angularjs 滚动加载更多数据
Mar 17 #Javascript
基于jquery实现智能提示控件intellSeach.js
Mar 17 #Javascript
JavaScript函数内部属性和函数方法实例详解
Mar 17 #Javascript
基于jquery实现简单的分页控件
Mar 17 #Javascript
jQuery实现图片局部放大镜效果
Mar 17 #Javascript
jQuery实现放大镜效果实例代码
Mar 17 #Javascript
node.js使用cluster实现多进程
Mar 17 #Javascript
You might like
phpMyAdmin 安装及问题总结
2009/05/28 PHP
PHP之APC缓存详细介绍 apc模块安装
2014/01/13 PHP
PHP中的插件机制原理和实例
2014/07/08 PHP
详解WordPress中简码格式标签编写的基本方法
2015/12/22 PHP
php入门教程之Zend Studio设置与开发实例
2016/09/09 PHP
js操作textarea方法集合封装(兼容IE,firefox)
2011/02/22 Javascript
jQuery.holdReady()使用方法
2014/05/20 Javascript
基于Jquery+Ajax+Json实现分页显示附效果图
2014/07/30 Javascript
jQuery中last()方法用法实例
2015/01/06 Javascript
JavaScript利用HTML DOM进行文档操作的方法
2016/03/28 Javascript
javascript cookie基础应用之记录用户名的方法
2016/09/20 Javascript
EasyUi 打开对话框后控件赋值及赋值后不显示的问题解决办法
2017/01/19 Javascript
详解JavaScript的BUG和错误
2018/05/07 Javascript
layerUI下的绑定事件实例代码
2018/08/17 Javascript
解决cordova+vue 项目打包成APK应用遇到的问题
2019/05/10 Javascript
vue 解决遍历对象显示的顺序不对问题
2019/11/07 Javascript
Python写的一个简单DNS服务器实例
2014/06/04 Python
Python实现简易Web爬虫详解
2018/01/03 Python
python3 面向对象__类的内置属性与方法的实例代码
2018/11/09 Python
举例讲解Python常用模块
2019/03/08 Python
用什么库写 Python 命令行程序(示例代码详解)
2020/02/20 Python
python smtplib发送多个email联系人的实现
2020/10/09 Python
css3实现3D文本悬停改变效果的示例代码
2019/01/16 HTML / CSS
一篇文章带你学习CSS3图片边框
2020/11/04 HTML / CSS
比利时的在线灯具店:Lampen24.be
2019/07/01 全球购物
阿迪达斯英国官方网站:adidas英国
2019/08/13 全球购物
怀旧香味蜡烛:Homesick
2019/11/02 全球购物
草莓网中国:StrawberryNet中国
2020/08/17 全球购物
将n个数按输入顺序的逆序排列,用函数实现
2012/11/14 面试题
生物制药毕业生自荐信
2013/10/16 职场文书
自我评价中英文语句
2013/11/30 职场文书
四年级下册教学反思
2014/02/01 职场文书
电气自动化个人求职信范文
2014/02/03 职场文书
销售员求职个人的自我评价
2014/02/19 职场文书
信访工作汇报材料
2014/10/27 职场文书
2015年人力资源工作总结
2015/04/08 职场文书