前端基础之Html、CSS、JavaScript、JQuery、Ajax

web前端入门知识解析 一、WEB前端是什么? 使用HTML/CSS/JS以及更多的框架技术,编写网站页面、App应用、小程序、2D&3D游戏、Web VR&AR等应用,通过内容设计、交互动画、数据操作构建项目与用户的交互界面。前端开发工程师在项目中可以与UI设计师和后台程序员合作,实现设计意图并调用后台接口;也可以独立工作,完成强用户交互的各类应用。 二、WEB前端可以做什么? 最经典的是各种类型的网站:电子商务、企业门户、管理系统、社区平台等;目前也是移动领域首选技术:WebApp、混编App、手机游戏、 阅读详情

前端

1.HTML

XML:可扩展标记语言
XHTML:可扩展的超文本标记语言

1. HTML 概述

HTML:超文本标记语言

网页组成:文字 + 图片 + 表格 + 表单 + 链接 + 视频 + 音频

网页文件的格式:htm ,html

网页的注释:<!-- 注释的内容 -->

html 结构

<!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>头部标题</title>
    </head>
    <body>
    	网页内容所在位置
    </body>
</html>

2. 标记

  1. 标记的语法

    <起始标签 属性名="值" ......> 被标记的内容</结束标签>
    

    注意:

    1. 不区分大小写(个别浏览器区分)
    2. 一般标记都是成对出现,极少数单独出现
    3. 标签可以相互嵌套,但不可交叉嵌套(属性如果其冲突,就近原则)
  2. 标签分类:

    1. 块级标签:有换行,有宽高,外边距正常,块级标签和行级标签都可以放
    2. 行内标签:没有换行,宽高无效,上下外边距无效,只能放文字和行级标签,不能放块级标签

    如果要给服务端提交数据,表单中的组件必须有 name 和 value 属性。用于给服务端获取数据方便

  3. 特殊字符

    &nbsp; 空格
    &gt; 	>
    &lt; 	<
    &quot; 	"
    &amp; 	&
    &copy; 	版权©
    &reg; 	注册®
    
  4. 标记

    1. 常用标记

      标题:<hn="1...6" align="left|center|right" ></hn>
      段落:<p align="left|center|right"></p>
      字体:<font size="1-7" color="颜色" face="字体风格[黑体]"></font>
          <i>斜体</i>		  <em>斜体</em>
          <b>加粗</b>		  <strong>加粗</strong>
          <u>下划线</u>		 <ins>下划线</ins>
          <s>删除线(贯穿线)</s><del>删除线</del>
          <sub>下标标识</sub>
          <sup>上部标识</sup>
      
      换行:<br/>
      居中:<center></center>
      元信息:<meta />
      预定义:<pre></pre>
      地址:<address></address>
      音频:<embed src=""></embed>
      水平线:<hr size="粗细" color="颜色" width="长度" align="center|left|right" noshade(3D 凹凸效果)/>
      滚动:<marquee direction="left|right|down|up" scrollamount="滚动速度"
      	behavior="scroll(重复)|slide(不重复)|alternate(来回滚动)" 
          loop="滚动次数-1" scrolldelay="两次之间的有延迟 值越大越明显的停顿"> </marquee>
      页面排版:<div> </div>
      
    2. 图片标记:img

      <img src="路径" width="长度" height="高度 px" alt="加载失败" title="标题"/>
      
    3. 链接标记:a

      1. 文本链接

        <a href="路径" target="_self|_blank(新窗口打开)" title="提示">百度</a>
        
      2. 图片链接:可做图片按钮

        <a href="链接路径" title="提示"><img src="图片路径" alt="图片加载失败" title="提示"/></a>
        
      3. 锚连接:一般用于当前页面位置的跳转

        <a name="锚名字" href="">首页</a>
        <a href="#锚名字">跳转到首页</a>
        
    4. 表格

      1. 完整版

        <table>
            <caption>标题</caption>
            <thead>
            	<tr><th></th></tr>
            <thead>
            <tbody>
            	<tr><td></td></tr>
            </tbody>
            <tfoot>
            	<tr><td></td></tr>
            </tfoot>
        </table>
        
      2. 属性

        1. table 表格

          border: 	边框粗细
          bordercolor:边框颜色
          width:		宽度
          height:		高度
          bgcolor:	背景颜色
          background:	背景图片
          cellspacing:单元格与单元格之间的距离
          cellpadding:单元格与数据之间的距离
          
        2. tr 行

          align:left|center|right 		 水平位置
          valign:middle 中|top 上|bottom 下 垂直位置
          height:
          width:
          bgcolor:
          background:背景图片
          
        3. td|th 列 (th 列属于首列,自动居中加粗)

          align:left|center|right 		 水平位置
          valign:middle 中|top 上|bottom 下 垂直位置
          height:
          width:
          bgcolor:
          background:	背景图片
          rowspan:	合并行
          colspan:	合并列
          # 合并行列:数格子,数过的格子不能再数
          
    5. 列表

      1. 有序列表

        <ol type="1|A|a|I|i" start="阿拉伯数字从哪里开始">
        	<li type="1|A|a|I|i"></li>
        </ol>
        
      2. 无序列表

        <ul type="disc(实心圆)|circle(空心圆)|square(正方形)">
        	<li></li>
        </ul>
        
      3. 自定义列表

        <dl>
            <dt> 小标题 </dt>
            <dd> 内容 </dd>
        </dl>
        
    6. 表单 form、input、select、textarea

      表单:是页面提供客户端输入信息的元素的统称,包括表单和表单元素

      如果要给服务端提交数据,表单中的组件必须有 name 和 value 属性,用于给服务端获取数据方便

      <form action="url 提交地址" method="get|post" name="formname">
             <fieldset>
                <legend>基本信息</legend>
          文本框:<input type="text" name="" size="" maxlength="" value="默认值"/>
          密码框:<input type="password" name="" size="" maxlength="" value="默认值"/>
          单选框:<input type="radio" name="sex" value="" checked="checked"/>提示符
          多选框:<input type="checkbox" name="" value="" checked="checked"/> 提示文字
          隐藏文本:<input type="hidden" name="" value=""/>
          上传文件:<input type="file" name=""/>
             </fieldset>
          
          下拉列表:<select name="" size="显示个数">
          			<optgroup lable="四川省">
                         <option value="成都">成都</option> 
                         <option value="南充" selected="selected">南充</option>
          			</optgroup>
                  </select>
          文本域:<textarea name="" rows="" cols="" readonly="readonly"></textarea>
          提交按钮:<input type="submit" value=""/>
          重置按钮:<input type="reset" value=""/>
          普通按钮:<input type="button" value=""/>
          图片按钮:<input type="image" src="" alt="图片加载失败"/>
          按钮图片:<button type="submit"><img src="" alt="" title="提交"/></button>
      </form>
      
  5. 页面框架

    框架一般用于写后台页面的时候用

    1. 定义框架

      <frameset rows="20%,*"> 纵向 
          <frame src="页面路径" noresize="noresize" frameborder="0" scrolling=""/>
      	<frame src="页面路径" name="right"/>
      </frameset>
      <frameset cols="30%,60%,*"> 横向 </frameset>
      <noframes>
      	<body>浏览器不支持</body>
      </noframes>
      
      left.html: <a href="right2.html" target="right">美女</a> right是右侧框架的名称
      
    2. 导入框架

      <frame src="页面路径" frameborder="0" scrolling="auto 可需|yes|no"/>	或
      <iframe src="页面路径" frameborder="0" scrolling="" width="" height=""></iframe>
      

3. GET、POST

GET 请求和 POST 请求的区别:

  1. 在客服端的区别

    区别GETPOST
    是否显示提交的信息都显示在地址栏中提交的信息不显示地址栏中
    封装位置将信息封装到了请求消息的请求行中将信息封装到了请求体中
    安全性对于敏感的数据信息不安全对于敏感信息安全
    数据体积对于大数据不行,因为地址栏存储体积有限,大小不超过4KB可以提交大体积数据
    速度相对较快相对较慢
    1. 在服务端的区别(乱码处理方式)

      如果提交中文到 tomcat 服务器会出现乱码,服务器默认会用 iso-8859-1 进行解码,解决方法:

      1. 对 get 提交和 post 提交都有效

        1. 通过 iso-8859-1 进行编码,再用指定的中文码表解码即可

        2. 用 URLDecoder.decode(user,“utf-8”)

        3. 修改 tomcat 的配置文件 server.xml:加上 URIEncoding="UTF-8"

          <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8"/>
          
      2. 对于 post 提交,还有另一种解决办法,就是直接使用服务端一个 request 对象

        request 对象的 setCharacterEncoding 方法直接设置指定的中文码表就可以将中文数据解析出来。这个方法只对请求体中的数据进行解码

        // 在获取数据之前,设置请求的字符编码集
        request.setCharacterEncoding("UTF-8");
        

和服务端交互的三种方式

位置请求方式
地址栏输入 url 地址get
超链接get
表单get 和 post

数据校验

客服端校验服务端校验
是否校验如果在客户端进行增强型的校验
(只要有一个组件内容是错误,是无法继续提交的,
只有全对才可以提交)
服务端收到数据后,也还需要校验
校验目的提高用户的上网体验效果,减轻服务器端的压力为了安全性

2. CSS

CSS:层叠样式表。 HTML 定义网页的内容,CSS 定义内容的样式

CSS 的注释:/* 注释内容 */

1. 样式

  1. 行内样式 style

    <p style="[属性样式] font-size:18px;background-image:url(.....);" ></p>
    
  2. 内嵌样式

    <head>
        <title></title>
        <style type="text/css">
        	选择器{属性样式}
        </style>
    </head>
    
  3. 外联样式 link

    <head>
        <title></title>
    	<link href="样式路径" rel="stylesheet" type="text/css"/>
    </head>
    

2. 选择器

优先级:id 选择器 > 类选择器 > 标签选择器

  1. id 选择器 #

    #name{ background-color:red; width:500px; }
    
  2. class 选择器 .

    .name1{ 样式属性 }
    
  3. 标签选择器

    h1{ font-size:36px;color:red;} /*页面所有的 h1 标记里的字体大小为 36px,颜色为红色*/
    
  4. 组合选择器

    h1 a li{ font-size:36px;color:red; } /*所有h1下的a下的li里的字体大小为36px,颜色为红色*/
    
  5. 通配符选择器

    *{样式属性} /* 整个页面所有的内容都具有的样式 */
    

3. 布局

  1. 漂浮 float

    Float:none|left|right      浮动
    Clear:none|left|right|both 清除浮动
    
  2. 定位 position

    定位的原则:先相对定位,再绝对定位

    position:relative; 相对定位,不脱离文档流
    position:absolute; 绝对定位,脱离文档流
    具体位置设置:top,left,right,bottom
    z-index:数值越大,越在上层
    

4. 样式属性

  1. 标签转换

    display:block;  行 转 块
    display:inline; 块 转 行
    display:none;   隐藏
    
  2. 尺寸、溢出、鼠标变手型

    width:100px;固定宽
    min-width:100px;最小宽度
    max-width:100px;最大宽度
    
    cursor:pointer;鼠标变手型
    overflow:hidden/visible/scroll/auto;隐藏/显示/始终出现滚动条/需要时才出现滚动条
    
  3. 字体/文本

    Font-style:normal/italic(斜体)
    Font-size:24px;
    Font-family:宋体/楷体
    Font-weight:bold/bolder/lighter
    Color:字体颜色
    
    Line-height:行高
    Letter-spacing:字间距
    word-spacing:词间距
    Text-decoration:none/underline/overline/line-through;无修饰/下划线/上划线/贯穿线
    Text-transform:uppercase/lowercase/capitalize; 大写/小写/首字母大写
    Text-indent:文本缩进
    Text-align:left/right/center
    
  4. 背景 transparent:透明

    Background-color:背景颜色 透明 transparent
    Background-image:背景图片
    Background-repeat:repeat|no-repeat|repeat-x|repeat-y 重复
    Background-position:背景位置
    
  5. 边框

    样式:border-style:solid;
    颜色:border-color:red;
    宽度:border-width:2px;
    简写:border:2px solid red;
    
    border-top-width:3px;
    border-top-style:dashed;
    border-top-color:#000;
    
    border-width:2px; 一值(四边) 两值(上下 左右) 三个值(上 左右 下) 四个值(上 右 下 左)
    
  6. 边距 Margin、Padding

    内边距:当前标记和当前标记里的内容区域之间的距离
        Padding 两值(上下 左右) 三个值(上 左右 下) 四个值(上 右 下 左)
            Padding-top:
            Padding-left:
            Padding-right:
            Paddding-bottom: 
    外边距:当前标记与该标记之外的内容的区域之间的距离
    	Margin
    
  7. 列表

    list-style-image;
    list-style-position;
    list-style-type:disc/circle/square/decimal/none;
    list-style:none;取消列表样式
    

5. 伪类

a:link{当连接被访问之前的样式}
a:visited{当连接被访问之后的样式}
a:hover{当鼠标悬浮在连接之上时的样式}
a:active{当连接点击与释放的瞬间的样式}
a:focus{获得焦点}

3. JavaScript

1. JavaScript 概述

JavaScript 是基于对象和事件驱动的脚本语言,主要应用在客户端

javascript 是由上到下解析的,浏览器会按照编写的顺序执行每条语句

JS注释:// 单行注释 、/**/ 多行注释

特点:

  1. 交互性(它可以做的就是信息的动态交互)
  2. 安全性(不允许直接访问本地硬盘)
  3. 跨平台性(只要是可以解释 Js 的浏览器都可以执行,和平台无关)

JavaScript 与 Java 不同

  1. Js 是基于对象,Java 是面向对象
  2. Js 只需解释就可以执行,Java 需要先编译成字节码文件,再执行
  3. Js 是弱类型,Java 是强类型

JavaScript 可以做什么?

  1. 写入 html 输出(把 html 标签写入 html 页面)
  2. 对事件做出反应
  3. 改变 html 内容
  4. 改变 html 图像
  5. 改变 html 样式
  6. 验证输入

Js 和 HTML 相结合的方式

  1. 将 javascript 代码封装到<script>标签中

    <head>
        <title></title>
    	<script type="text/javascript">
            // js代码
        </script>
    </head>
    或放在<body><script></script></body>
    
  2. 将 javascript 代码封装到 js 文件中,并通过<script>中的 src 属性进行导入

    注意:如果<script>标签中使用 src 属性,那么该标签中封装的 javascript 代码不会被执行,
    所以通常导入 js 文件都是用单独<script>来完成。格式:

    <script type="text/javascript" src="xxx.js"></script> <!-- 早期用language,而现在使用type属性 -->
    

2. JavaScript 语法

1. 变量

变量的命名规则:

  1. 变量通常以字母开头
  2. 变量也能以$和符号开头(不推荐这么做)
  3. 变量名对大小写敏感(y 和 Y 是两个不同的变量)

变量(数据类型):Number、Boolean、String、Object、Array、Object、null、undefined

全局变量:在<script></script>标签中直接声明的变量
局部变量:在方法中声明的变量

javascript 拥有动态类型,即是相同的变量可用作不同的类型(弱数据类型),由等号右边的值来决定变量的数据类型。

例如:
var x; 				// 此时 x 是 Undefined 数据类型。
var x = 6; 			// x 是数字类型
var x = "bochy"; 	// x 是 String 类型

注意:

  1. js 中定义变量,使用 var 关键字
  2. 如果把值赋给尚未声明的变量(没用 var 声明),该变量将自动作为全局变量声明, 即使他在函数内
  3. undefined:未定义,其实它是一个常量
  4. typeof :判断具体的值的数据类型

2. 运算符

类型运算符
算术运算符+ - * / % ++ –
赋值运算符= += -= *= /= %=
比较运算符> < >= <= != == ===(全等)
逻辑运算符&&(与) ||(或) ! (非)
位运算符& (与) |(或) ^(异或) >>(右移) <<(左移) >>>(无符号右移)
三元运算符? :

3. 语句

  1. 顺序结构

  2. 判断结构:if-else

  3. 选择结构:switch

  4. 循环结构:for、while、do_while、for…in(用于数组或者对象)

    for(var 新变量 in 循环的变量){ 
        //要执行的循环语句 
    }
    
  5. 特有语句:with

  6. 异常语句:try/catch、throw

    try{
        if(条件) throw "可能出现异常的代码块的具体异常";
    }catch(e){ //处理异常的代码 }
    

4. 对象

常用对象有:String、Array、Date、Math、Number、Global、自定义对象

  1. Number 对象:javascript 只有一种数字类型,数字可以带小数点,也可以不带

    1. 定义方法

      var a1 = 12; 
      var a2 = 12.2;
      var a3 = new Number(12);
      
  2. Boolean 对象

    1. 定义方法

      var b1 = new Boolean(); // 默认为false
      var b2 = new Boolean(true); //true
      var b3 = true;
      
  3. String 对象

    1. 定义方法

      var str1 = "hello";
      var str2 = new String("hello");
      var str3 = new String();
      str3 = "hello";
      
    2. 属性(constructor、length、prototype 原型属性)

      var str = "www.bochy.COM.cn";
      var len = str.length;
      
    3. 方法(toString、valueOf)

      toUpperCase();			// 转成大写
      toLowerCase();			// 转成小写
      charAt(index);			// 下标处的字符
      indexOf("o");			// 首次出现的下标
      substr(start,length);	// 从start处截取length长度的字串
      substring(start,end);	// 截取字串 [start,end)
      split(".");         	// 分割
      valueOf(var)			// 转为字符串对象
      test("正则表达式字符串");  // 使用正则表达式进行校验
      
  4. Array 对象

    特点:1.长度是可变的 2.元素类型是任意的,建议存储同一类型的元素,操作起来比较方便

    1. 定义方法

      var arr1 = new Array(); // 相当于 Var arr = []
      arr1[0] = "a1";
      var arr2 = new Array(12,13,14,15);
      var arr3 = [12,13,14,15];
      
    2. 属性(constructor、length、prototype)

    3. 方法

      contact();	// 连接
      join();		// 加入
      pop();		// 删除最后一个
      shift();	// 删除第一个
      push();		// 添加
      splice();	// 删除并替换
      unshift();	// 插入第一个
      
  5. Object 对象

    1. 定义方法

      var per1 = {"name":"李四","age":22};
      var per2 = new Object();
      per2.name = "张三"; //设置对象的属性和值
      per2.age = 20;
      
  6. Date 对象

    var d = new Date();
    var year = d.getFullYear();		// 获取年
    var month = d.getMonth()+1;		// 获取月份
    var date = d.getDate(); 		// 获取日期
    var hour = d.getHours();		// 获取小时
    var minute = d.getMinutes(); 	// 获取分钟
    var second = d.getSeconds();	// 获取秒数
    var day = d.getDay();			// 获取星期值
    var ms = d.getMilliseconds(); 	// 获取毫秒
    
  7. Math 对象

    Math 对象不能用 new 关键字创建,如果试图这样做会给出错误。

    该对象在装载脚本引擎时,由该引擎创建。其方法和属性在脚本中总是可用

    ceil(); 	  // 返回大于等于其数字参数的最小整数。
    floor(); 	  // 返回小于等于其数值参数的最大整数。
    max();min();  // 求最大值,最小值
    random();     // 随机数, [0,1)
    
  8. Global 对象

    1. 方法

      isNaN();	// 是否非法
      
  9. 自定义对象

5. 函数

分类:一般函数、匿名函数、动态函数

函数:就是一个功能的封装体

  1. 一般函数格式

    function 函数名(参数列表){
        // 函数体:
        return 返回值; //如果没有具体的返回值,return 语句可以省略不写。
    }
    

    函数细节:

    1. 只要使用函数名就是对函数的调用
    2. 函数中有一个数组arguments在对传入的参数进行存储
  2. 动态函数

    动态函数:使用 js 中的内置对象 Function,用的不是很多。参数列表,函数体都是通过字符串动态指定的

    var add = new Function("x,y","var sum; sum=x+y; return sum;"); // 参数列表,函数体
    
  3. 匿名函数

    匿名函数:没有名字的函数,函数的简写形式

    var add3 = function (a,b){return a+b;}
    

6. 事件

  1. 常用事件

    onblur="" 	// 失去焦点
    onfocus="" 	// 获取焦点
    onchange="" // 域的内容被改变
    onsubmit="" // 提交按钮事件
    onclick=""  // 单击事件
    onmousemove="" // 进入某个元素移动
    onmouseover="" // 鼠标悬停
    onmousedown="" // 鼠标按下
    onmouseup=""   // 鼠标松开
    onmouseout=""  // 鼠标移出某个元素
    
  2. 表单的属性

    类型属性
    文本readonly=“readonly” 只读
    复选框/单选框checked 是否选中
    value 属性值
    下拉列表value:获取值
    options:所有的值
    selectedIndex:返回被选择的选项的索引号,选中第一个返回 0,第二个返回 1
  3. 事件简单应用

    1. 复选框

      function func_checkbox(){
      	var myform = document.forms["myform"]; // 通过表单的name获得表单form对象
          var loves = myform.loves;	// 通过form对象获得loves属性,返回的是数组
          alter(loves.length);		// 使用弹窗,输出数组的长度
      } 
      
    2. 单选框

      function func_radio(){
      	var myform = document.forms["myform"]; // 通过表单的name获得表单form对象
          var sex_value = myform.sex.value;// 通过form对象获得被选中sex属性值,返回的是字符串
          alter(sex_value);				 // 使用弹窗,输出属性值
      } 
      

7. JS 的 DOM 操作

document 是 html 文本对象

  1. 常用 DOM 操作

    var img =document.getElementById("id 名");			// 根据 id 获取 html 节点
    var img =document.getElementsByName("属性的name值");  // 根据 name 获取 html 节点
    var img =document.getElementsByTagName("标签名");	   // 根据标签名获取 html 节点
    document.getElementById("id 名").value; 		// 获得 id 标签的值
    document.getElementById("id 名").innerHTML; 	// 将内容写入到 id 标签中
    document.write("hello"); 					 // 将 hello 写入到 html 页面
    
    img.setAttribute("属性名","属性值");// 设置某个属性的值
    img.getAttribute("属性名");		// 获取某个属性的值
    
    var p = document.createElement("p");			// 创建元素节点
    var m = document.createTextNode("段落里面的内容");	// 创建文本内容
    p.appendChild(m);								// 把文本内容放到 p 标签中
    p.removeChild(p1);								// 删除 p 的子节点
    document.body.appendChild(p);					// 将 p 标签放入文档中
    
  2. 使用 HTML DOM 来分配事件

    window.onload=function(){
        document.getElementById("username").onfocus=function(){
        	alert("请输入名字");
        }
    }
    

8. JS 的 BOM 操作

浏览器对应的对象就是 window 对象,内置对象直接使用

  1. window 对象的属性

    1. document 文档对象(每个载入浏览器的 html 文档都会成为 document 对象)

      document.write("hello"); 					 // 将 hello 写入到 html 页面
      
    2. location 地址对象(包含当前 url)

      window.location.herf = "url";
      
    3. history 历史对象(包含客户访问过的 url 信息)

      window.history.back(); // 退回到上一步
      
  2. window 对象的方法

    alert();	// 警告提示框
    confirm();	// 选择提示框
    prompt();	// 输入提示框
    onload      //加载就绪
    
    var ID = setInterval("函数名()",周期毫秒值); // 周期性
    clearInterval(setInterval()返回的ID值);		// 跳出周期性函数
    setTimeout,clearTimeout
    

3. BOM

BOM(Browser Object Model): 浏览器对象模型,用于操作浏览器

浏览器对应的对象就是 window 对象,可通过查阅 dhtml api 获得

Window 对象常用方法:

alert();			 // 弹窗
confirm();			 // 弹窗确认
setTimeOut();		 // 超时事件
setInterval();
clearInterval();

常用对象:

  1. Location 对象
  2. Document 对象

4. DOM

DOM(Document Object Model):文档对象模型,用来将标记型文档封装成对象,并将标记型文档中的所有的内容(标签,文本,属性等)都封装成对象。

  • 封装成对象的目的:是为了更加方便操作这些文档以及文档中的所有内容。因为对象的出现就可以有属性和行为可被调用
  • 常见的标记型文档:html xml

1. DOM 解析

只要是标记型文档,DOM 这种技术都可以对其进行操作

要操作标记型文档必须对其进行解析

解析方式:

  1. DOM 解析方式

    将标记型文档解析一棵 DOM 树,并将树中的内容都封装成节点对象

    优缺点:

    1. 优点:可以对树中的节点进行任意操作,比如:增删改查
    2. 缺点:要将整个标记型文档加载进内存,意味着若标记型文档的体积很大,较为浪费内存空间
  2. SAX 解析方式

    SAX:基于事件驱动的解析

    SAX 是由一些民间组织定义的解析方式,并不是 w3c 标准,而 DOM 是 W3C 的 标准

    优缺点:获取数据的速度很快,但是不能对标记进行增删改。

2. DHTML

DHTML:动态的 HTML,不是一门语言,是多项技术综合体的简称

DHTML中包含了 HTML,CSS,DOM,Javascript

  1. HTML:负责提供标签,对数据进行封装,目的是便于对该标签中的数据进行操作。

    简单说:用标签封装数据。

  2. CSS:负责提供样式属性,对标签中的数据进行样式的定义。

    简单说:对数据进行样式定义

  3. DOM:负责将标签型文档及文档中的所有内容进行解析,并封装成对象,在对象中定义了更多的属性和行为,便于对对象操作。

    简单说:将文档和标签以及其他内容变成对象。

  4. JS:负责提供程序设计语言,对页面中的对象进行逻辑操作。

    简单说:负责页面的行为定义。就是页面的动态效果。

所以 javascript 是动态效果的主力编程语言。

AJAX = DHTML + XMLhttpRequest

5. 正则表达式

常用的正则表达式:(/^是开始标记,$/是结束标记)

1. 验证邮箱: /^[_a-z0-9]+@([_a-z0-9]+\.)+[a-z0-9]{2,3}$/
2. 验证 IP 地址: /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/g 注:g 只是正则选项,不属于匹配内容
3. 验证手机号码: /^[1][3][0-9]{9}$/
4. 验证带区号的电话号码: /^[0][1-9]{2,3}-[0-9]{5,10}$/
5. 验证不带区号的电话号码: /^[1-9]{1}[0-9]{5,8}$/
6. 验证是否是整数: /^[-]{0,1}[0-9]{1,}$/
7. 检查输入字符串是否是带小数的数字格式,可以是负数: /^[-]{0,1}(\d+)[\.]+(\d+)$/
8. 检查输入字符串是否只由英文字母和数字和下划线组成: /^[0-9a-zA-Z\_]+$/
9. 验证年龄: /^[0-9]{1,3}$/
10. 验证数字: /^\d*\.?\d+$/

简单应用:

function is_age(){
	var ageRegExp = /^[0-9]{1,3}$/; // 注意:不要加""
    var age = document.getElementById("age"),value; // 获取表单中的值
    if(ageRegExp.test(age)){
       document.getElementById("age_info").innerHTML = "年龄正确";
    }else{
       document.getElementById("age_info").innerHTML = "请输入1-3位的数字";
    }
}  

4. JQuery

1. JQuery 简介

JQuery 是一个 JavaScript 的函数库

JQuery 函数库包含哪些特性?

  1. html 元素选取
  2. html 元素操作
  3. css 操作(获取和修改)
  4. html 事件操作(各种事件,在 JQuery 里面做了封装)
  5. html DOM 操作
  6. ajax

2. JQuery 语法

JQuery 语法是为 html 元素选取编制,可以对元素执行某些操作

基础语法:$:表示 JQuery

$(selector).action(); // selector 是选择器,action 是动作

文档就绪函数:

作用:为了防止文档在未完全加载之前运行 JQuery 代码

$(document).ready(function(){
	//JQuery 代码
});

简写形式:
$((function(){
	//JQuery 代码
});

JQuery 是为事件处理特别设计的函数库,当你遵循以下原则时,你写的代码会更恰当且更易于维护:

  1. 把所有的 jquery 代码置于事件处理函数中
  2. 把所有事件处理函数都置于文档就绪函数中
  3. 把 jquery 代码置于单独的 js 文件中

3. JQuery 选择器

在 HTML DOM 中允许对 DOM 元素组或者单个节点进行操作,而在 JQuery 中有很多选择器

  1. 元素选择器

    $("p"); 		// 选择<p>元素
    $("p.intro");	// 选取所有 class="intro"的所有 p 元素
    $("p#demo");	// 选取 id="demo"的第一个 p 元素
    
  2. 属性选择器

$("[href]"); 		 // 选取所有带有 href 属性的元素
$("[href='#']"); 	 // 选取所有带有 href 属性且 href 的值等于#的元素
$("[href!='#']"); 	 // 选取所有带有 href 属性且 href 的值不等于#的元素
$("[href$='.jpg']"); // 选取所有 href 值以.jpg 结尾的元素

4. 事件/效果/CSS 函数

  1. JQuery 事件

    $(document).ready(function(){}); 		// 文档的就绪事件
    $(selector).click(function(){}); 		// 被选元素的单击事件
    $(selector).dblclick(function(){}); 	// 被选元素的双击事件
    $(selector).focus(function(){}); 		// 被选元素的获取焦点事件
    $(selector).mouseover(function(){}); 	// 被选元素的鼠标悬停事件
    
  2. JQuery 效果

    $(selector).hide(); 		// 隐藏被选元素
    $(selector).show(); 		// 显示被选元素
    $(selector).toggle(); 		// 切换(在隐藏与显示之间)被选元素
    $(selector).slideDown(); 	// 向下滑动(显示)被选元素
    $(selector).slideUp(); 		// 向上滑动(隐藏)被选元素
    $(selector).slideToggle(); 	// 切换(在隐藏与显示之间)被选元素
    $(selector).fadeIn(); 		// 淡入被选元素
    $(selector).fadeOut(); 		// 淡出被选元素
    $(selector).fadeToggle(); 	// 切换
    
  3. JQuery CSS 函数

    $(selector).css(name,value); // 为所有匹配元素的给定 css 属性设置值。
    $(selector).css(properties); // 为所有匹配元素的一系列 css 属性设置值。
    $(selector).css(name); 		 // 返回指定的 css 的值
    $(selector).width([val]); 	 // 获取/设置所有匹配元素的宽度
    $(selector).height([val]); 	 // 获取/设置所有匹配元素的高度
    

5. JQuery 的 DOM 操作

  1. 类(Class 选择器的 css 样式)

    addClass(类名); 		// 向匹配的元素添加指定的类名
    removeClass(类名); 	// 删除匹配元素的类
    toggleClass(类名); 	// 没有就添加类,有就删除类
    
  2. 属性

    attr(); 				  // 设置/获取属性
    removeAttr(要删除的属性名);  // 删除匹配元素某一个属性
    
  3. 内容

    append(); 	// 向匹配的元素内部添加内容
    after(); 	// 向匹配的元素之后添加内容
    before(); 	// 向匹配的元素之前添加内容
    
  4. 其他

    remove(); 	// 删除所有匹配的元素
    html(); 	// 取得第一个匹配元素的 html 内容
    text(); 	// 取得所有匹配元素的内容.结果是由所有匹配元素包含的文本内容组合起来的文本
    val(); 		// 获取匹配元素的当前值
    empty(); 	// 删除匹配的元素集合中所有的子节点。(包括文本节点)
    

5. Ajax 异步交互

1. Ajax 概述

Ajax:不用刷新整个页面便可与服务器通讯的办法

  1. 传统 Web 与 Ajax 的差异

    差异传统 WebAjax
    发送请求方式提交表单方式发送请求异步引擎对象发送请求
    服务器响应响应内容是一个完整页面响应内容只是需要的数据
    客服端处理方式需等待服务器响应完成,并重新加载整个页面后,用户才能进行操作可以动态更新页面中的部分内容,用户可以不需等待请求的响应
  2. Ajax 执行过程

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EGnpELXS-1648561406717)(link-picture\image-20220114145756983.png)]

2. XMLHttpRequest 对象

XMLHttpRequest:Ajax 的核心对象

该对象是对 JavaScript 的一个扩展,可使网页与服务器进行通信,是创建 Ajax 应用的最佳选择。实际上通常把 Ajax 当成 XMLHttpRequest 对象的代名词

XMLHttpRequest 对象

  1. XMLHttpRequest 的常用方法

    						   // method为GET/POST,url为相对URL或绝对URL。第3个是可选参数
    open(“method”,”url”,...); // 建立对服务器的调用
    send(content);			   // 向服务器发送请求
    setRequestHeader("label", "value");// 设置请求头的值,设置任何头部之前必须先调用 open()
    
  2. XMLHttpRequest 的常用属性

    1. onreadystatechange:事件处理函数

      1. 该事件处理函数由 ajax 框架触发,而不是用户在 Ajax 执行过程中触发,

      2. 触发后,服务器会通知客户端当前的通信状态,

        这依靠更新 XMLHttpRequest 对象的 readyState 来实现。改变 readyState 属性是服务器对客户端连接操作的一种方式。

      3. 每次 readyState 属性的改变都会触发 onreadystatechange 事件。

    2. readyState:表示 Ajax 当前的请求状态

      它的值用数字代表:

      readyState 值含义
      0代表未初始化,还没有调用 open 方法
      1代表正在加载,open 方法已被调用,但 send 方法还没有被调用
      2代表已加载完毕,send 已被调用,请求已经开始
      3代表交互中,服务器正在发送响应
      4代表响应完成,响应发送完毕

      每次 readyState 值的改变,都会触发 onreadystatechange 事件。如果把 onreadystatechange 事件处理函数赋给一个函数,那么每次 readyState 值的改变都会引发该函数的执行。readyState 值的变化会因浏览器的不同而有所差异。但是,当请求结束的时候,每个浏览器都会把 readyState 的值统一设为 4。

    3. Status:状态码

      服务器发送的每一个响应也都带有头部信息。三位数的状态码是服务器发送的响应中最重要的头部信息,并且属于超文本传输协议中的一部分。常用状态码及其含义:

      状态码含义
      200一切正常(ok)
      304没有被修改(服务器返回 304 状态,表示源文件没有被修改)
      400错误请求,如语法错误
      403禁止访问(forbidden)
      404没找到页面(not found)
      500内部服务器出错(internal service error)

      在 XMLHttpRequest 对象中,服务器发送的状态码都保存在 status 属性里。通过把这个值和 200 或 304 比较,可以确保服务器是否已发送了一个成功的响应。

    4. statusText:返回当前请求的响应状态

    5. 服务器的响应内容

      1. responseText:从服务器返回的普通文本数据
      2. responseXML:从服务器返回的是 XML。MIME 类型必须为 text/xml

      它是一个 HTML,XML 或普通文本,这取决于服务器发送的响应内容。

      注意:

      1. 只有Ajax 的请求状态 readyState 值为 4 时, responseText/responseXML 属性才可用,表明 Ajax 请求已经结束。
      2. 只有服务器发送了带有正确头部信息的数据(Status=200)时,responseText/responseXML 属性才是可用的。

3. JavaScript 的 Ajax 异步交互

  1. 浏览器端

    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
            <title>JavaScript 的 Ajax 请求</title>
        </head>
        <body>
            <label>用户名:</label>
            <input name="userName" id="userName" onblur="checkUserExist()"/>
            <label id="NameMsg"></label>
            
            <script type="text/javascript">
                var xmlHttpRequest; 			  // 定义 XMLHttpRequest 对象
                function createXmlHttpRequest() { // 建立 XMLHttpRequest()对象
                    if (window.ActiveXObject) {	  // 解决浏览器的兼容问题
                    	return new ActiveXObject("Microsoft.XMLHTTP");
                    } else if (window.XMLHttpRequest) {
                    	return new XMLHttpRequest();
                    }
                }
                function checkUserExist(){ //发起 ajax 请求
                    var userName = document.getElementById('userName');
                    var NameMsg = document.getElementById('NameMsg');
                    if(userName.value == null || userName.value == ''){
                        NameMsg.innerHTML = '用户名不能为空';
                        userName.focus();
                        return;
                    }else{
                    	NameMsg.innerHTML = '';
                    }					  // encodeURIComponent 是JQuery的方法
                    var param = 'userName='+ encodeURIComponent(userName.value);
                    var url = '${pageContext.request.contextPath}/servlet/UserServlet';
                    // 1.创建 xmlhttprequest 对象
                    xmlHttpRequest = createXmlHttpRequest(); 
                    // 2.设置回调函数
                    xmlHttpRequest.onreadystatechange=callback;
                    // 3.建立连接 open
                    xmlHttpRequest.open('POST', url);		   
                    // 4.设置请求头
                    xmlHttpRequest.setRequestHeader('Content-Type', 
                                               "application/x-www-form-urlencoded");
                    // 5.发送请求 send
                    xmlHttpRequest.send(param); 
                }
                //处理 ajax 请求的结果
                function callback(){ 
                    if(xmlHttpRequest.readyState == 4){ //完成
                        if(xmlHttpRequest.status == 200){ //成功
                            var result = xmlHttpRequest.responseText; //响应的返回值
                            var NameMsg = document.getElementById('NameMsg');
                            if("true" == result){ // 被占用
                            	NameMsg.innerHTML = '用户名被占用';
                            }else{
                            	NameMsg.innerHTML = '用户名可用';
                            }
                        }
                    }
                }
            </script>
        </body>
    </html>
    
  2. 服务器端

    获取浏览器端发过来的参数并作出响应

    public void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        String userName = request.getParameter("userName"); //参数是写在 uri 中的
        if(userName != null){
            //uri 默认的编码方式是 ISO8859-1
            userName = new String(userName.getBytes("ISO8859-1"),"UTF-8");
        }
        System.out.println(userName);
        response.setContentType("text/html;charset=utf-8");
        PrintWriter out = response.getWriter();
        if("jacky".equals(userName) || "张三".equals(userName)){
        	out.print("true");
        }else{
        	out.print("false");
        }
        out.flush();
        out.close();
    }
    

4. JQuery 的 Ajax 异步交互

传统方式 JavaScript 实现 Ajax 的不足

  1. 方法、属性、常用值较多,不易记忆
  2. 实现步骤繁琐
  3. 还有浏览器兼容问题

1. JQuery 的 Ajax

  1. 语法:

    $.ajax([参数]);
    
  2. 常用参数

    属性名说明
    String url发送请求的地址,默认为当前页面地址
    String type请求方式:POST/POST,默认GET
    String headers请求头
    String accepts通过请求头发送给服务器,告诉服务器当前客户端可接受的数据类型
    String data或Object data发送到服务器的数据
    String contentType发送信息至服务器的内容编码类型,默认:
    “application/x-www-form-urlencoded; charset=UTF-8”
    String dataType将服务器端返回的数据转换成指定类型,
    包括XML、HTML、Script、JSON、JSONP、text
    Boolean async是否异步,默认为true
    Boolean global是否触发全局Ajax事件,默认为true
    Number timeout设置请求超时时间
    function beforeSend(XMLHttpRequest xhr)发送请求前的回调函数,参数可选
    function complete(XMLHttpRequest xhr,String st)请求完成后的回调函数,参数可选
    function success(Object result,String st)请求成功后的回调函数,参数可选
    function error(XMLHttpRequest xhr,String st,Exception e)请求失败时的回调函数,参数可选

    服务器端返回数据后转换类型(contentType):

    转换后类型含义
    xml将服务器端返回的内容转换成 xml 格式
    text将服务器端返回的内容转换成普通文本格式
    html将服务器端返回的内容转换成普通文本格式,在插入 DOM 中时,如果包含 JavaScript 标签,则会尝试去执行
    script尝试将返回值当作 JavaScript 去执行,然后再将服务器端返回的内容转换成普通文本格式
    json将服务器端返回的内容转换成相应的 JavaScript 对象
    jsonpJSONP 格式使用 JSONP 形式调用函数时,如 “myurl?callback=?” ,jQuery 将自动替换 ? 为正确的函数名,以执行回调函数
  3. 常用方法

    $.ajax();
    $.get(); 
    $.post();
    $.getJSON();
    load();
    
    1. ajax:get、post都可以用 ajax 代替

      $.ajax(
          url:url,
          type:"get", //1.9.0之后用method
          data:data,
          dataType:"txt",
          success:function(result){},
          error:function(){}
      );
      
    2. load:加载函数 可用 get 代替

      $("#nameDiv").load(url,data);
      
      等价于
      $.get(url,data,function(result){
          $("#nameDiv").html(result);
      })
      等价于
      $.ajax(
          url:url,
          type:"get",
          data:data,
          dataType:"txt",
          success:function(result){
          	// 处理服务器返回来的数据
      	}
      );
      
    3. getJSON: 可用 ajax 代替

      $.getJSON(url,data,success(result){
      	// 处理服务器返回来的数据
      });
      
      等价于
      $.ajax(
          url:url,
          type:"get",
          data:data,
          dataType:"json",
          success:function(result){
          	// 处理服务器返回来的数据
      	}
      );
      

5. JSON 的 Ajax 异步交互

  1. 客服端的 JSON 的使用

    客服端使用 JQuery 的 getJSON() 方法发起请求

    $.getJSON(url,data,success(result){
    	// 处理服务器返回来的数据
    });
    
  2. 服务端的 JSON 的使用

    服务端使用 json-lib 类库,将要返回的数据转换成 JSON,或者反向转换。

    json-lib: 是一个 java 类库,提供将 Java 对象(包括 bean,map,collection,array,XML等)转换成 JSON,或者反向转换的功能。

    使用 json-lib ,执行环境需要其他类库支持

    image-20220114172219382

ajax 代替`

  ~~~js
  $.ajax(
      url:url,
      type:"get", //1.9.0之后用method
      data:data,
      dataType:"txt",
      success:function(result){},
      error:function(){}
  );
  ~~~
  1. load:加载函数 可用 get 代替

    $("#nameDiv").load(url,data);
    
    等价于
    $.get(url,data,function(result){
        $("#nameDiv").html(result);
    })
    等价于
    $.ajax(
        url:url,
        type:"get",
        data:data,
        dataType:"txt",
        success:function(result){
        	// 处理服务器返回来的数据
    	}
    );
    
  2. getJSON: 可用 ajax 代替

    $.getJSON(url,data,success(result){
    	// 处理服务器返回来的数据
    });
    
    等价于
    $.ajax(
        url:url,
        type:"get",
        data:data,
        dataType:"json",
        success:function(result){
        	// 处理服务器返回来的数据
    	}
    );
    

5. JSON 的 Ajax 异步交互

  1. 客服端的 JSON 的使用

    客服端使用 JQuery 的 getJSON() 方法发起请求

    $.getJSON(url,data,success(result){
    	// 处理服务器返回来的数据
    });
    
  2. 服务端的 JSON 的使用

    服务端使用 json-lib 类库,将要返回的数据转换成 JSON,或者反向转换。

    json-lib: 是一个 java 类库,提供将 Java 对象(包括 bean,map,collection,array,XML等)转换成 JSON,或者反向转换的功能。

    使用 json-lib ,执行环境需要其他类库支持

    image-20220114172219382
Javaweb完整入门,web全套学习教程「HTML+CSS+JS+Ajax+jQuery+VUE」 在前端这个岗位兴起之前,html+css的工作是被视觉人员所承担的,而js这部分则是由后端完成的。 随着智能手机和移动互联网的普及,五花八门的应用占领着每个人的手机,随之而来各种定制化的UI风格,让兼容问题变得越来越头疼。 因此,有企业开始把html+css+js这部分工作独立出来一个新的岗位来处理,成为了一个处理视觉和交互的综合岗位。 实际上,Web前端存在在我们生活中的每一个角落,我们每时每刻都会感受到它的存在。 我们每天要打开数十次的微信,里面的各种功能、小程序都离不开web前端技术。 同时加 阅读详情

相关推荐

写个一个简单的web项目,把前端技术:html、css、JavaScript、jQuery,ajax,bootstrop等都放在这个web项目上了。

写个一个简单的web项目,把html、css、JavaScript、jQuery,ajax,bootstrop前端技术的dome。

【前端】区分html、css、json、ajax、layer、jquery、 el、jstl、

JSTL(JSP Standard Tag Library),JSP标准标签库,可以嵌入在jsp页面中使用标签的形式完成业务逻辑等功能。在这段时间里,客户端可以任意进行任意操作,直到服务器端将数据返回给Ajax引擎后,会触发你设置的事件,页面发起请求,会将请求发送给浏览器内核中的Ajax引擎,Ajax引擎会提交请求到服务器端,javascript代码:获得页面节点对象、ajax元素节点对象实现、事件操作、事件对象。减少jsp表达式的编写,EL出现的目的是要替代jsp脚本编写。1、直接嵌入HTML页面。

weixin_51947647的博客 658

技术解析:ChangeFormer——基于Transformer的孪生网络在遥感变化检测中的创新应用

本文深入解析了ChangeFormer模型在遥感变化检测中的创新应用,该模型基于Transformer架构和孪生网络(Siamese Network),显著提升了变化检测的精度和效率。通过详细的技术实现和实战经验分享,展示了其在建筑物变化、森林监测等场景中的卓越表现,为相关领域的研究和应用提供了有力工具。

weixin_29102619的博客 494

CSS、AJax、JS、HTML

学习新闻发布系统对这几个词有个初步了解,本篇博主着重讲述HTML,首先先跟大家分享我对CSS、AJax和JS的理解。 CSS (Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。 作用:完成画里面...

Phoneix的博客 494

l0phtcrack 7(爆破管理员密码)使用教程

l0phtcrack7简称lc7,是爆破计算机管理员密码的软件,早期是网络安全管理员用来检测系统用户是否使用了不安全的密码,后被黑客用于用户口令破解 功能:该工具支持远程破解,理论上能破解所有密码,但对复杂度比较高的密码,破解时间很长 使用前提:1.登录了需要破解的计算机 2.知道需要破解的计算机的一个管理员的账户,密码 ** 也许你会疑惑,我都知道了一个管理员账户密码了,还要另外的管理员密码...

Xiongcanne的博客 2万+

UQLab——其他概率分布随机变量转换标准Gaussian分布

1、使用UQLab将其他类型的随机变量转换成标准Gaussian分布; 2、使用科学计数法输出样本,方便后续ANSYS的调用分析; 3、基于MC的可靠度分析。 原随机变量分布类型: % 调用UQLab进行采样 clc clear uqlab %% Specify these distributions as a UQLab INPUT object: PriorOpts.Marginals(1...

ikhui7的博客 3013

前端HTML CSS JavaScipt JQuery

Client/Server CS模式用户需要下载客户端才能使用。如微信、QQ、游戏等。特点:功能丰富,安装繁琐、需要更新、平台不同,软件不同,开发成本高。Browser/Server BS模式用户只需一个浏览器即可使用。如网页QQ、商业网站等。特点:功能较为丰富,无需安装软件,只需一个浏览器,无需更新,平台无关,开发时只需设计一套页面。B/S模式下,用户访问便捷,无需安装多余软件,企业开发成本低。所以B/S模式是Java主要开发的模式,一个WEB项目,需要浏览器、服务器和数据库。用户通过浏览器访问服务器上

m0_58356078的博客 454

LabVIEW与三菱PLC通讯实战:ActiveX控件在FX5U上的应用技巧

本文深入探讨了如何利用三菱MX Component中的ActiveX控件,在LabVIEW中实现与FX5U系列PLC的高效、稳定通讯。文章从环境配置、ActiveX控件生命周期管理、数据读写性能优化及容错机制等实战角度,分享了构建工业级健壮通讯程序的核心技巧与架构设计思路。

qsc9012345的博客 888

21.HTML、CSS

HTML、CSSHTML概述HTML是什么HTML的结构HTML语法(了解)HTML标签图像标签超链接标签表格标签表单标签表单项标签表单细节问题注册表单案例CSS概述什么是CSS?(了解)在HTML中引入CSSCSS选择器标签名选择器class选择器id选择器后代选择器属性选择器常用属性总结文本属性字体属性背景属性边框(border)其他属性补充: 颜色设置网页开发实战扩展内容display属性元素类型(了解) HTML: 用于开发网页的一门技术 CSS: 用于修饰、渲染网页的一门技术 HTML标签搭建网页

weixin_43911672的博客 742

逆向工程实战:如何一步步破解京东APP的sign签名算法(附Frida脚本)

本文详细解析了京东APP的sign签名算法逆向工程实战,通过Frida脚本动态分析Java层和Native层的多层签名机制,揭示商业应用的加密协议设计。文章提供了完整的逆向工程方法论与工具链,帮助开发者深入理解移动应用安全防护体系,提升安全防御能力。

weixin_28622215的博客 915

LLCC68芯片系统架构与LoRa驱动开发核心解析

LoRa射频收发器是低功耗广域物联网(LPWAN)的关键组件,其本质是集成了调制解调器、协议引擎、数据缓冲区与电源管理的专用SoC。理解其工作模式状态机(Sleep/Standby/TX/RX)与SPI主机接口时序规范,是实现稳定通信的基础。LLCC68通过寄存器映射与命令集双接口抽象硬件控制,支持LoRa扩频调制与FSK兼容模式,具备高链路预算(157 dB)和DC-DC/LDO动态电源切换能力。典型应用场景包括远距离传感器节点、智能表计与工业无线监测系统。本文深入剖析LLCC68的信号链路径、中断机制与

weixin_29859471的博客 281

基于CSS+HTML+JS开发简单个人网站(上)

首页/* 内容容器样式,设置背景、边框、阴影等 */.content {width: 80%;/* 介绍文本样式,设置字体大小、粗细和外边距 */.intro {/* h2 标题样式,设置颜色和外边距 */h2 {/* 段落文本样式,设置行高、缩进和外边距 */p {

u014114223的博客 1221

智慧城市中的CV:交通流量监控与行人检测

智慧城市中的CV:交通流量监控与行人检测 ,人工智能,计算机视觉,大模型,AI,计算机视觉作为人工智能的重要分支,通过分析和理解图像或视频数据,为智慧城市提供了强大的感知能力。在交通管理领域,计算机视觉技术可实现交通流量监控、行人检测、违章行为识别等功能,助力构建高效、安全、绿色的城市交通系统。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 5万+

Web前端学习路线,超全面整理「HTML+CSS+JS+Ajax+jQuery+VUE

Web前端学习路线,超全面整理「HTML+CSS+JS+Ajax+jQuery+VUEWeb前端学习路线,超全面整理「HTML+CSS+JS+Ajax+jQuery+VUEWeb前端学习路线,超全面整理「HTML+CSS+JS+Ajax+jQuery+VUE

weixin_49376454的博客 1万+

基于Simulink的伺服电机位置闭环控制仿真

本文带你从零构建了伺服电机位置闭环控制系统​ 的完整Simulink仿真模型,实现了:✅ 搭建PMSM伺服电机、逆变器、机械臂负载的主电路与编码器反馈模型;✅ 用MATLAB Function实现三环控制(位置环PID、坐标变换、电流环PI);✅ 验证阶跃定位(稳态误差0.002°、响应0.08s)与正弦跟踪(误差0.008°)的高性能;✅ 对比开环控制,明确位置闭环在精度、响应、抗扰上的优势;✅ 理解“三环嵌套+反馈校正”的核心思想(精密定位的工程实现)。核心收获。

amy_mhd的博客 173

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

web前端基础html,css,js,jquery

目录 1 前端技术: 1.1 学习方法 1.1.1 前端要怎么学? 1.1.2 前端技术栈 1.2 HBuilderX 1.2.1 介绍 1.2.2 安装 1.2.3 主题 1.2.4 字体 1.2.5 去掉px转rem提示 1.2.6

weixin_57619565的博客 2305

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

100本最棒的web前端图书推荐(二)

上次发《100本最棒的web前端图书推荐(一)》一文后,有很多人过来问,有没有基础的js入门图书?有没有Ajax的图书?有没有实战类的图书?有没有相关视频教程?.....所以这两天抽空又写了《100本最棒的web前端图书推荐(二)》,同时把大家需要的图书推荐给各位,因为图书太多了,不一定适合所有人,因为每个人基础不一样,大家可以选自己需要的。 11、HTML5与CSS3基础教程(第8版) 语言:中文 类型:pdf 简介:本书是风靡全球的HTML和CSS入门教程的最新版,至第6版累积销量已超过10

m0_58455009的博客 981

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

CSS与HTML和javascript之间的关系

前端开发 基本概念 前端开发是创建Web页面或app等前端界面呈现给用户的过程. 通过HTML ,CSS及JavaScript以及衍生出来的各种技术、框架、解决方案,来实现互联网产品的用户界面交互 。它从网页制作演变而来,名称上有很明显的时代特征。 在互联网的演化进程中,网页制作是Web1.0时代的产物。 早期网站主要内容都是静态,以图片和文字为主,用户使用网站的行为也以浏览为主。随着互联网技术的发展和HTML5、CSS3的应用,现代网页更加美观,交互效果显著,功能更加强大。 发展历程 前端技术的发展是互联

weixin_50821119的博客 1102

前端学习路线图及前端工程师适合学习的后端技能

从基础的 HTML、CSS、JavaScript 到 jQuery、AJAX、Bootstrap,再到 Vue、React 这些现代框架,前端开发者的学习路径逐步扩展到小程序开发和服务端技术。通过学习 Node.js、Docker 和 Nginx 等后端技术,前端开发者能够拓展技能,提升项目部署和优化的能力。学习这些技术,将使你不仅仅成为一个优秀的前端开发者,还具备全栈开发和项目部署优化的能力。在开发行业中,理解全栈的能力是非常宝贵的,它让你拥有了更大的灵活性和创新能力。

2202_75337835的博客 2856

HTML、CSS、JavaScript、jQuery、JSP、JSTL 、Ajax这七项技术的核心区别、定位和用途

前端核心(HTML/CSS/JS):运行在浏览器,分别负责结构、样式、交互,是网页的基础;jQuery:是JS的工具库,仅简化JS代码,无独立作用,现在逐渐被原生JS/框架替代;JSP/JSTL:运行在Java服务器,属于后端技术,核心是动态生成HTML,JSTL是JSP的「语法糖」(简化代码);核心差异:前端技术(HTML/CSS/JS/jQuery)运行在浏览器,后端技术(JSP/JSTL)运行在服务器,JSP最终会输出HTML给浏览器展示。

m0_46129832的博客 736

前端学习者应该知道的前端学习方向

大家好 我叫小杨。今天我给大家介绍一下如果你是一个前端学习者,你应该怎么学,学什么! 一、前端基础 1.HTML、2.CSS、3.JavaScript(DOM、BOM) 什么是HTML? HTML就是一个网站的骨架 什么是CSS? CSS就像是人穿的衣服,你使用CSS就像再给HTML穿衣服,这样才能让我们网页更加好看 什么是JavaScript? JavaScript就像是人在运动,如果我们的网页你使用了JavaScript的话,你的网页就能让和用户体验更加的舒服 首先你得有一个好的基础才

m0_59553217的博客 1645

前端常用语言

     html:负责定义页面的内容     css:负责定义页面的样式     javascript:负责控制页面的行为以上三种为前端学习的基本课程    jquery:javascript框架,javascript函数库,极大简化了javascript。    bootstrap:一个用于快速开发 Web 应用程序和网站的前端框架。   AngularJS: 是一个 JavaScript 框...

zny_study的博客 2万+

表严肃:前端语言基础HTML+CSS+JS,JQuery

课程链接HTML CSS HTML 一张网页一个html:内部是页面 body:放可见的显示元素(head存其他) head:为网页储存必要信息,不会显示,为了给浏览器-搜索引擎使用。 head-title:显示页面之上的页面标志标签:搜索引擎把title作为结果。(-style,-meta等) body-h1:概括整个页面的主题:只有一个。(h2-h6可多个);h标签可以嵌套子元素子标签。 p:段落标签: (1)内部(一个或多个)换行会自动转为一个标签; (2)多个p标签,多个段落; (3)p标签内部也

ChangeW fafa的博客 673

前端应该掌握的技术

技术是永无止境的,下边只是指出目前比较流行的技术 html:负责定义页面的内容 css:负责定义页面的样式 javascript:负责控制页面的行为 以上三种为前端学习的基本课程 jquery:javascript框架,javascript函数库,极大简化了javascript。 bootstrap:一个用于快速开发 Web 应用程序和网站的前...

qqhuzi36的博客 697

WEB前端入门知识及要点大全

一、WEB前端是什么? 使用HTML/CSS/JS以及更多的框架技术,编写网站页面、App应用、小程序、2D&3D游戏、Web VR&AR等应用,通过内容设计、交互动画、数据操作构建项目与用户的交互界面。前端开发工程师在项目中可以与UI设计师和后台程序员合作,实现设计意图并调用后台接口;也可以独立工作,完成强用户交互的各类应用。 二、WEB前端可以做什么? 最经典的是各种类型的网站:电子商务、企业门户、管理系统、社区平台等;目前也是移动领域首选技术:WebApp、混编App、手机游戏、微信公

weixin_65996806的博客 4069

[学习日志][前端开发]HTML,Vue,JS基础知识点整理

前端 vue文档 :https://cn.vuejs.org/v2/guide/ html文档:https://www.w3school.com.cn/tags/index.asp css文档:https://www.w3school.com.cn/cssref/index.asp javascript文档:https://www.w3school.com.cn/js/index.asp jquery文档:https://www.w3school.com.cn/jquery/index.asp jso

weixin_44714634的博客 1095
上一篇: Java进阶
下一篇: JavaWeb基础
pybstudyjava
博客等级 码龄5年 0粉丝 5原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值