JavaEE Note我爱编程

js&JQuery

2017-09-15  本文已影响24人  chcvn

内容回顾

  1. JS开发步骤

    • 确定事件(onclick鼠标点击事件,onsubmit表单的提交事件,onload页面加载完成事件)
    • 定义函数实现功能
    • 获取标签的控制权, 修改标签样式和属性
  2. BOM(Broswer Object Model,浏览器对象模型)

    • window: 浏览器中的窗口
      特点:API调用不需要书写window
      三个框:警告框alert(), 确认框confirm() , 对话框prompt()
      五个函数:
      setInterval(“函数调用”,ms) 周期性的计时器
      setTimeout(“函数调用”,ms) 一次性的计时器
      对应上面两个函数的清除函数
      clearInterval(ID)
      clearTimeout(ID)
      open() 打开新的窗口访问地址
    • location: 浏览器的地址栏
      属性:href 改变浏览器地址栏的值
      location.href = "URL"
    • history: 浏览器历史记录
    • screen: 浏览器显示的屏幕
    • navigator: 浏览器的信息
  3. JS常用事件
    == onclick 点击事件 ==
    ==ondblclick双击事件==
    ==onload 页面加载==
    ==onsubmit 表单提交事件==
    ==onchange 下拉列表改变==
    ==onfocus 获得焦点==
    ==onblur 失去焦点==

  4. JS的DOM模型
    DOM:Document Object Model:文档对象模型.
    将一个HTML的文档加载到内存形成一个树形结构,从而操作树形结构就可以改变HTML的样子.
    ==document对象:表示文档在内存中的树状图==
    ==Element 对象:表示所有的标签==
    ==Attribute对象:标签中的所有的属性==
    常用的API:

    • 获得元素
      document.getElementById() 通过ID获得标签
      document.getElementsByName() 通过name属性获得一组标签
      document.getElementsByTagName() 通过标签名称获得一组标签
    • 创建元素
      document.createElement(名字)
      document.createTextNode(文字)
    • 添加元素
      父标签.appendChild(子标签)
      element.insertBefore(新标签,之前的标签) 某个标签前添加新标签
    • 删除元素
      父标签.removeChild(子标签)
  5. 内置对象
    数组定义
    var arr = new Array(length)
    var arr = [];
    arr = [1,2,3,”aaaa”];
    ==特点:js数组长度可变并且类型不固定==
    String 类似Java

    全局函数
    parseInt("") 将字符串转换成整数
    parseFloat("") 将字符串转换成数字
    eval("JS代码"); 执行JS代码

今日重点

  1. jQuery的作用:对于JS的封装,实现动态效果
  2. ==jQuery对象与JS对象相互转换==
  3. ==jQuery的选择器==
  4. ==jQuery对文档的操作==
  5. ==jQuery对元素的循环遍历==

要求:

01- 案例一:使用JQ定时弹出广告:需求和JQ的概述

02- 案例一:使用JQ定时弹出广告:JQ的入门及JS对象和JQ对象的转换

03- 案例一:使用JQ定时弹出广告:JQ的效果函数的概述

04- 案例一:使用JQ定时弹出广告:代码实现

05- 案例一:使用JQ定时弹出广告:总结:JQ的选择器-基本选择器

JQ强大的选择器提供操作便利(类比CSS当中的选择器去记忆)

06-案例一:使用JQ定时弹出广告:总结:JQ的选择器-层级选择器

07-案例一:使用JQ定时弹出广告:总结:JQ的选择器基本过滤及内容选择器

08-案例一:使用JQ定时弹出广告:总结:JQ的选择器-属性选择器

09-案例一:使用JQ定时弹出广告:总结:JQ的选择器-表单及表单属性选择器

$(":text") 表示选中表单type=“text”的所有input表单标签

10-案例二:使用JQ完成表格的隔行换色:需求、分析及代码实现

11-案例三:使用JQ完成复选框的全选和全不选:需求和分析

12-案例三:使用JQ完成复选框的全选和全不选:代码实现

// 简化:
$("#selectAll").click(function(){
    // this表示当前被选中的对象(也就是全选按钮)
     $(":checkbox[name='ids']").prop("checked",this.checked);
});

13-案例三:使用JQ完成省市联动的效果:需求和JQuery的文档操作

14-案例三:使用JQ完成省市联动的效果:JQ的元素遍历

遍历元素

// 遍历的方式一:
$.each(objects,function(i,n){

});
// 遍历的方式二:
$(“”).each(function(i,n){
});

注意:i表示下标,n表示对应下标的对象

15-案例三:使用JQ完成省市联动的效果:代码实现

var cities = [
            ["杭州市","绍兴市","温州市","义乌市","嘉兴市"],
            ["南京市","苏州市","扬州市","无锡市"],
            ["武汉市","襄阳市","荆州市","宜昌市","恩施"],
            ["石家庄市","唐山市","保定市","邢台市","廊坊市"],
            ["长春市","吉林市","四平市","延边市"]
        ];
                
var $city = $("#city");
// 获得代表省份的下拉列表:
$("#province").change(function(){
    // alert(this.value);
    // alert($(this).val());
    $city.get(0).options.length = 1;

    var val = this.value;
    // 遍历并且判断:
    $.each(cities,function(i,n){
        // 判断:
        if(i == val){
            $(n).each(function(j,m){
                // alert(j+"   "+m);
                $city.append("<option>"+m+"</option>");
            });
        }
    });
});

今日总结

  1. 什么是jQuery, 它有什么作用?怎么使用?
    jQuery是一个JS的框架,封装了JS的操作(加强版的JS)
    优势:它提供了快速查询DOM文档中元素的能力,大大强化了JS中获取页面元素的方式。
    作用:实现漂亮的页面动态效果, jQuery中内置了一系列的动画效果,可以开发出非常漂亮的网页,比如淡入淡出、元素移除等动态特效。

    • 引入JQ的包(xxx.js)
    • 书写JQ代码
      $(function(){
          JQ代码
      })
      
  2. ==JS与JQ的相互转换==

    • 将JS转换成JQ对象
      $(js对象)
    • 将JQ对象转换成JS对象
      JQ对象.get(0)/JQ对象[0]

    JQ对象调用API返回的永远是JQ对象

  3. ==JQ选择器==

    • ==基本选择器==
      • ID选择器 $(“#ID”)
      • CLASS选择器 $(“.class”)
      • 元素选择器 $(“元素名称”)
      • 通配符选择器 $(“*”)
      • 并列选择器 $(“selector1,selector2……”)
    • ==层级选择器==
      • 兄弟选择器 $(“selector + selector”) 选择同辈的下一个元素
      • 选择同辈中往后所有的元素:$(“selector ~ selector”)
      • 子元素选择器:$(父选择器 > 子选择器)
      • 后代选择器:$(父选择器 子选择器)
    • 基本过滤选择器
      • :first 选择第一个
      • :last 选择最后一个
      • :eq(index) 选择下标为index的元素
      • :odd/:even 注意:下标从0开始
    • 属性选择器
      $(“input[属性名=’属性值’]”)
    • 表单选择器(了解)
      :input
      :text/:password/:radio/:checkbox……
  4. JQ对文档的操作(DOM的crud)
    JQ.append() 追加元素
    JQ.appendTo(父元素) 将元素追加到父元素
    JQ.remove() 删除元素

  5. 元素循环遍历

    // 方式一
    $.each(数组,function(i,n){
        i表示下标
        n表示数组元素
    });
    // 方式二
    $(数组).each(function(i,n){
        i表示下标
        n表示数组元素
    });
    
image.png
上一篇下一篇

猜你喜欢

热点阅读