0


万字长文的CSS与JavaScript简易学习

近期学习web笔记,可供参考

css:

css导入方式:

css导入HTML有三种方式,

1.内联样式:在标签内部使用style属性,属性值是css属性键值对

  1. <div style="color:red"> HELLO CSS</div>

2.内部样式:定义<style>标签,在标签内部定义css样式

  1. <style type="text/css">
  2. div{
  3. color:red;
  4. }
  5. </style>

3.外部样式:定义link标签,在HTML中引入外部css文件

  1. href="../demo.css"
  1. )是css文件路径

( rel ="stylesheet" 标志是css文件)

  1. <link rel ="stylesheet" href="demo.css">

外部css:

  1. div{
  2. color:red;
  3. }

整合代码实例:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. <style>
  7. div{
  8. color: blue;
  9. }
  10. </style>
  11. <link href="../demo.css" rel="stylesheet">
  12. </head>
  13. <body>
  14. <!--方法1 内联-->
  15. <div style ="color:red"> jskxcdksmkmfdkjd</div>
  16. <div>dkdsasdk6666666666</div>
  17. <p>nb999</p>
  18. </body>
  19. </html>

demo.css文件:

  1. p{
  2. color:darkred;
  3. }

css选择器:

选择器是选择其所需的标签如:

div{

color:red;

}

表示选取标签div

选择器的分类:

1.元素选择器:

元素名称{color:red;}

2.id选择器:

#id属性值{color:red;}

3.类选择器:

.class属性值{color:red;}

选择器向冲突时,谁选择范围小,谁生效

id选择器唯一,所以选择器为单项

类选择器可以多选

代码实例:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. <style>
  7. div{
  8. color: darkcyan;
  9. }
  10. #name{
  11. color:rebeccapurple;
  12. }
  13. .cls{
  14. color:darkgreen;
  15. }
  16. </style>
  17. </head>
  18. <body>
  19. <div>div1</div>
  20. <div id="name">div2</div>
  21. <div class="cls">div3</div>
  22. <span class="cls">span1</span>
  23. </body>
  24. </html>

javascript:

javascript介绍:

javascript是一门跨平台,面向对象的脚本语言(不需要编译,直接可执行),来控制网页行为,他能让网页可交互

js是控制网页行为的,所以需要与HTML结合

js引入方式:

1.内部脚本:

将js代码定义在HTML页面中

在HTML中,js代码必须位于<script></script>标签之间

  1. <script>
  2. alert("hello js");
  3. </script>

提示:

1.在HTML文档中可以在任何位置加<script>标签

2.一般把标签放置在<body>元素的底部,这样可以改善显示速度,先加载出来页面(让用户先看到页面,不着急),在加载js代码(脚本执行会拖慢显示)

2.外部脚本:
将js代码定义在外部js文件中,让后也引入HTML页面中
外部文件:demo.js

  1. alert("hello js");

引入外部js文件:

  1. <script src="../js/demo.js"></script>

注意:
1.外部脚本不能包含<script>标签

2.<script>标签不能自闭和

代码演示:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. <script>
  7. <!--内部js-->
  8. alert("js hello");
  9. <!--弹出警告框-->
  10. </script>
  11. </head>
  12. <body>
  13. <script src="../js/demo.js">
  14. <!--用src属性指定资源路径-->
  15. </script>
  16. </body>
  17. </html>

外部js代码:

  1. alert("666666");

js书写语法:

1.区分大小写:与Java一样,变量名,函数名以及其他一切东西都是区分大小写的,

2.每行结尾的分号可有可无

3.注释:与Java一样

4.大括号表示代码块

输出语句:
1.使用window.alert()写入警告框

2.使用document.write()写入HTML输出

3.使用console.log()写入浏览器控制台

代码实例:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <script>
  9. alert("99999999");
  10. document.write("66666");
  11. console.log("88888");
  12. <!--可在开发者工具中查看-->
  13. </script>
  14. </body>
  15. </html>

js变量:

在js中用var关键字来声明变量

  1. var test=20;
  2. test="张三";

JavaScript是一门弱类型的语言,变量可以存放不同类型的值

变量名的命名规则与Java相同(建议驼峰命名)

在使用var命名时,相当于全局变量(而且可以重复定义)

新引入let关键字来定义变量,用法类似var,但是所声明的变量,只在let关键字所在的代码块内有效,且不允许重复声明

新增const关键字,用来声明一个只读的常量,一旦声明,常量就不能改变

数据类型:
JavaScript中分为:原始类型和引用类型

5种原始类型:

number:数字

string:字符

boolean:布尔

null:对象为空

undefined:当声明的变量未初始化时,该变量的默认值是undefined

使用typeof运算符可以获取数据类型

alert(typeof age);

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <script>
  9. var ch='ss';
  10. var age=20;
  11. var price=66.9;
  12. var obj=null;
  13. alert(typeof age);
  14. alert(typeof price);
  15. alert(typeof ch);
  16. alert(typeof obj);
  17. </script>
  18. </body>
  19. </html>

运算符:

运算符与Java运算符大概相同

js比Java多一个(===全等于)

  1. ==
  2. * 1.判断类型是否相同,如果不一样,则进行类型转换‘
  3. * 2.再比较其值
  4. * ===全等于
  5. * 1.判断类型是否一样,不一样直接返回false
  6. * 2.类型一样才比较值

JavaScript类型转换:

  1. *类型转换:
  2. * 1.其他类型转换成number(使用parseInt 字符串转换成数字)
  3. * string:按照字符串字面值,转换成数字
  4. * boolean: true转换成1 false 转换成0
  5. * **/
  6. /*
  7. * 当字符串为非字母时,会转换成NaN(number中特殊的值)
  8. * 如果想让字符串转换成number 在字符串前面加上+
  1. 其他类型转换成Boolean
  2. * 1.number 0NaN 转为false 其他转换成true
  3. * 2.string 空字符串转换成false 其他转换成true
  4. * 3.null false
  5. * 4.undefined false

代码实例:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <script>
  9. /*
  10. *
  11. * ==
  12. * 1.判断类型是否相同,如果不一样,则进行类型转换‘
  13. * 2.再比较其值
  14. * ===全等于
  15. * 1.判断类型是否一样,不一样直接返回false
  16. * 2.类型一样才比较值
  17. * */
  18. var b=20;
  19. var c="20";
  20. alert(b==c);
  21. /*
  22. *类型转换:
  23. * 1.其他类型转换成number(使用parseInt 字符串转换成数字)
  24. * string:按照字符串字面值,转换成数字
  25. * boolean: true转换成1 false 转换成0
  26. * **/
  27. /*
  28. * 当字符串为非字母时,会转换成NaN(number中特殊的值)
  29. * 如果想让字符串转换成number 在字符串前面加上+
  30. * */
  31. var d="sss";
  32. alert(parseInt(d));
  33. var e=+true;
  34. alert(e);
  35. /*
  36. * 其他类型转换成Boolean
  37. * 1.number 0与NaN 转为false 其他转换成true
  38. * 2.string 空字符串转换成false 其他转换成true
  39. * 3.null false
  40. * 4.undefined false
  41. * */
  42. </script>
  43. </body>
  44. </html>

JavaScript流程控制语句:

与Java也是相同的

if:

switch:

for:
while:

do....while:

部分代码实例:

由于与Java完全相同,没有全部写出

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <script>
  9. var sum=0;
  10. for (let i=1;i<=100;i++)// 最好用let定义 只在代码块中有效 用var 则全局有效
  11. {
  12. sum+=i;
  13. }
  14. alert(sum);
  15. /* do while */
  16. var sum=0;
  17. var i=1;
  18. do {
  19. sum+=i;
  20. i++;
  21. }while(i<=100)
  22. alert(sum);
  23. </script>
  24. </body>
  25. </html>

JavaScript函数:

函数(Java中成为方法):都是被设计为执行特定任务的代码块

在JavaScript中函数的定义与Java中方法的定义有些不同

定义:JavaScript函数通过function关键字进行定义,语法为:
方式1:

  1. function fun(a,b)
  2. {
  3. return a+b;
  4. }

方式2:

  1. var f=function (a,b){
  2. return a-b;
  3. }

先定义一个变量,让变量接受函数的值(数组相当于对象)

注意:

1.形式参数不需要类型,因为JavaScript是弱类型语言

2.返回值也不需要定义类型 可以在函数内部直接使用return返回

函数的调用:

  1. let m=fun(1,2);

函数的调用注意:
函数调用的过程中,传入的参数个数可以与形参个数不同

当形参个数为2时,实参传入1个时,则另一个形参会赋值为NaN

则最后结果也是NaN

  1. function fun(a,b)
  2. {
  3. return a+b;
  4. }
  5. let m=fun(1);
  6. alert(m);

跳出弹框:

JavaScript对象:

1.Array

JavaScript中Array对象用于定义数组

定义:

方法1:

var 变量名=new Array(元素列表)

  1. var n1=new Array(1,2,3);

方法2:

var 变量名=[元素列表]

  1. var n2=[1,3,2];

注意:

js数组类似于Java中的集合,长度,类型可变

访问:

与Java的数组访问相似:

  1. n2[0]

JavaScript中的变长度:

  1. var n1=new Array(1,2,3);
  2. // alert(n1);
  3. n1[10]=10;
  4. alert(n1);
  5. alert(n1[9])

访问结果:

在没有初始化的情况下,会被赋值为undefined

JavaScript中的变类型:

  1. n1[5]="helloooo";
  2. alert(n1[5])
  3. alert(n1)

Array属性:

1.length

  1. var arr=[1,2,3];
  2. for (let i = 0; i < arr.length; i++) {
  3. alert(arr[i])
  4. }

Array方法:

push:添加方法

数组相当于对象,所以调用方法时要用对象

  1. var arr=[1,2,3];
  2. arr.push(4);
  3. for (let i = 0; i < arr.length; i++) {
  4. alert(arr[i])
  5. }

splice:删除方法

  1. splice(参数1,参数2

参数1:表示从下标为几的位置开始删除

参数2:表示删除元素的个数

  1. arr.splice(1,1)

2.String对象:

定义:

方式1:

var 变量名=new String(s);

  1. var n1=new String("skadj");
  2. alert(n1);

方式2:

var 变量名=s;

  1. var n2="sssssssss";
  2. alert(n2);

属性:

length :字符串的长度

  1. alert(n2.length)

方法:

charAt() 返回在指定位置的字符

IndexOf() 检索字符串

trim()方法:去除字符串前后两端的空白字符串

  1. var srt=" a "
  2. alert(1+srt.trim()+2)

JavaScript中的自定义对象:

与Java中的类相似

格式:

var 对象名={

属性1:属性值1,

...................

函数名:function(形参列表){}

..................

};

实例:

  1. <script>
  2. /*
  3. * 创建的是自定义对象 对象 对象!!!!!!!!!!
  4. * */
  5. var n1={
  6. name:"txc",
  7. class:"yun1",
  8. age:19,
  9. eat :function (a,b){
  10. alert(a+"和"+b+"都喜欢吃水果")
  11. }
  12. }
  13. n1.eat("tt","yy");
  14. alert(n1.age)
  15. </script>

BOM对象:

浏览器对象模型

JavaScript将浏览器的各个组成部分封装为对象

BOM中的五个对象:
Window:

  1. 窗口(打开的浏览器对象--可以调用一些window方法(window可以省略))

widow对象的属性:获取其他BOM对象

window方法:alert() 弹出警告框(确认的按钮和警告信息)

  1. confirm()显示一段消息以及确认按钮和取消按钮的对话框
  1. let confirm1 = confirm("危险!!!");
  2. alert(confirm1)
  1. confirm()是有返回值的 返回值的不同走的路径就不同(点击确定按钮--true 点击取消按钮返回---false
  2. setInterval()按照指定周期来调用函数或计算表达式
  3. setTimeout()在指定的毫秒后调用函数或计算表达式

代码实例:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <script>
  9. /*显示一段消息以及确认按钮和取消按钮的对话框*/
  10. let confirm1 = confirm("危险!!!");
  11. alert(confirm1)
  12. /* setInterval()
  13. 按照指定周期来调用函数或计算表达式*/
  14. // setInterval(function(),毫秒值);//在一定的时间间隔后执行一个function()函数,循环结束
  15. // setTimeout() 在一定的时间间隔后执行一个function()函数 执行一次
  16. // setInterval(function (){
  17. // alert("hello");
  18. // },3000);
  19. setTimeout(function (){
  20. alert("hello");
  21. },3000);
  22. </script>
  23. </body>
  24. </html>

定时器(比如京东商城页面的滑轮--定时转换)

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <input type="button" onclick="on()" value="白底">
  9. <img id="myImage" border="0" src="蓝底.gif" style="...">
  10. <input type="button" onclick="off()" value="蓝底">
  11. <script>
  12. function on(){
  13. document.getElementById('myImage').src='蓝底.gif'
  14. }
  15. function off(){
  16. document.getElementById('myImage').src='白底.gif'
  17. }
  18. var x=0;
  19. setInterval(function (){
  20. if (x % 2=== 0)
  21. {
  22. on();
  23. }
  24. else
  25. {
  26. off();
  27. }
  28. x ++ ;
  29. },1000);
  30. </script>
  31. </body>
  32. </html>

Navigator:

  1. 浏览器对象(整个浏览器对象-------包含浏览器的一些信息)

Screen:

  1. 整个显示器屏幕对象(屏幕的属性----长宽高之类)

History:

  1. 历史记录对象

获取:使用window.history获取(window可以省略)

history.方法();

方法:

back()

  1. 加载history列表中前一个URL(统一资源定位符---调用资源)

forward()

  1. 加载history列表中后一个URL()

效果

Location:
地址栏对象

location.方法()(---window省略)

属性:
href:设置或返回完整的URL

其实就相当与传入一个网址,进行跳转

内容函数引用

  1. document.write('三秒后跳转');函数

Document 对象使我们可以从脚本(JavaScript)中对 HTML 页面中的所有元素进行访问。

在页面上写入出来

代码实例:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <script>
  9. document.write('三秒后跳转');
  10. setTimeout(function ()
  11. {
  12. location.href="https://www.bilibili.com/video/BV1Qf4y1T7Hx?p=79&spm_id_from=pageDriver&vd_source=061c60aa464a23eb048c1d56c47c8b6c"
  13. },3000)
  14. </script>
  15. </body>
  16. </html>

DOM:

文档对象模型

将标记语言的各个部分封装为对象

HTML是标记文档(各部分被封装)

Document:整个文档对象

Element:元素对象(标签对象)

Attribute:属性对象

Text:文本对象

Comment:注释对象

JavaScript通过dom对HTML进行操作

  1. 改变HTML元素内容
  2. 改变HTML元素样式
  3. HTML DOM事件做出反应
  4. 添加和删除HTML元素

DOM定义访问了HTML和XML文档的标准

W3C 的 DOM标准被分为三部分

1.核心DOM:针对任何结构化文档的标准模型

  1. Document:整个文档对象
  2. Element:元素对象(标签对象)
  3. Attribute:属性对象
  4. Text:文本对象
  5. Comment:注释对象

2.XML DOM:针对xml文档的标准模型

3.HTML DOM :针对HTML文档的标准模型

  1. Image: <img>
  2. Button:<input type ='button'>'

Element:元素对象

使用:查阅文档

获取:使用DOCUMENT对象的方法获取

1.document.getElementById() :根据id属性获取,返回一个element对像

2.document.getElementsByTagName():根据标签名获取,返回element对象数组

3.document.getElementsByName():根据name 属性获取,返回element对象数组

4.document.getElementsByClassName():根据class属性获取,返回element对象数组

代码实例:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <img id="light" src="蓝底.gif"> <br>
  9. <div class="cls">传智教育</div> <br>
  10. <div class="cls">黑马程序员</div> <br>
  11. <input type="checkbox" name="hobby"> 电影
  12. <input type="checkbox" name="hobby"> 旅游
  13. <input type="checkbox" name="hobby"> 游戏
  14. <script>
  15. // 返回element对象
  16. var img=document.getElementById("light");
  17. alert(img)
  18. var divs = document.getElementsByTagName("div");
  19. alert(divs.length)
  20. alert(divs[0])
  21. var ho = document.getElementsByName("hobby");
  22. alert(ho[0])
  23. var cls = document.getElementsByClassName("cls");
  24. alert(cls[0])
  25. </script>
  26. </body>
  27. </html>

属性:

element.style 设置或返回元素的style属性 (设置css样式)

element.innerHTML 返回或设置元素内容

代码实例:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <img id="light" src="蓝底.gif"> <br>
  9. <div class="cls">传智教育</div> <br>
  10. <div class="cls">黑马程序员</div> <br>
  11. <input type="checkbox" name="hobby"> 电影
  12. <input type="checkbox" name="hobby"> 旅游
  13. <input type="checkbox" name="hobby"> 游戏
  14. <script>
  15. //# 上面三种标签会封装成对象
  16. //通过对象进行更改
  17. document.getElementById("light").src="白底.gif"
  18. var divs = document.getElementsByTagName("div");
  19. for (let i=0;i<divs.length;i++)
  20. {
  21. divs[i].style.color='red';
  22. // divs[i].innerHTML="hehh";
  23. }
  24. // <input>中type="checkbox"
  25. // 属性checked 设置或返回checkbox是否被选中(true false)
  26. var hobbys = document.getElementsByName("hobby");
  27. for (let i=0;i<hobbys.length;i++)
  28. {
  29. hobbys[i].checked=true;
  30. // alert(hobby[i]);
  31. }
  32. </script>
  33. </body>
  34. </html>

事件监听:

事件:HTML事件是发生在HTML元素上的“事情”

  1. 比如:
  2. 按钮被点击
  3. 鼠标移动到元素之上
  4. 按下键盘按键

事件监听:JavaScript可以在事件被监测到时执行代码

事件绑定:

方式一:

通过HTML标签中事件的属性进行绑定(没有做到职责单一,JavaScript代码和HTML代码耦合在一起)

方式二:

  1. 通过DOM属性绑定

代码实例:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <input type="button" value="点我" onClick='on()'><br>
  9. <input type="button" value="再点我" id="btn">
  10. <script>
  11. //方式1 通过标签属性进行绑定
  12. function on()
  13. {
  14. alert("我被点了");
  15. }
  16. // 方式2:// 通过DOM属性绑定
  17. document.getElementById("btn").onclick=function ()
  18. {
  19. alert("我被点了")
  20. }
  21. </script>
  22. </body>
  23. </html>

常用事件:

onblur:元素失去焦点(文本框点 击就获得焦点--变深)

onfocus:元素获取焦点

onsubmit:确认提交表单

表单验证(案例):

1.当输入框失去焦点时,验证输入内容是否符合要求

2.当点击注册按钮时,判断所有输入框内容是否符合要求,如果不符合则阻止表单提交

正则表达式:

正则表达式定义了字符串的组成规则

定义:

1.直接量:(不要加引号)

var reg =/^\w{6,12}$/

2.创建RegExp对象

var reg =new RegExp("^\w{6,12}$")

方法:
test(str):

str:是字符串

判断指定字符串是否符合正则表达式的规则,返回true和false

代码实例:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <script>
  9. // 规定单词字符6-12
  10. var reg =/^\w{6,12}$/;
  11. var str="sdsddsd";
  12. var flag=reg.test(str);
  13. alert(flag);
  14. // 长度11 数字组成 第一位是1
  15. var re=/^[1]\d{10}$/
  16. var st="15893266008"
  17. var falg=re.test(st);
  18. alert(falg);
  19. </script>
  20. </body>
  21. </html>

到此完结撒花!!!!!!!

标签: css html 前端

本文转载自: https://blog.csdn.net/m0_61469860/article/details/127366863
版权归原作者 小唐同学(๑>؂<๑) 所有, 如有侵权,请联系我们删除。

“万字长文的CSS与JavaScript简易学习”的评论:

还没有评论