四.JavaScript(一) 2021-02-23
四.JavaScript(一)
1.JavaScript的基本使用
1.JavaScript 是什么
JavaScript原名liveScript, 是一门动态类型,弱类型基于原型的脚本语言
2.JavaScrpit 的作用
3.JavaScript 写在哪里
例:
1.1JavaScript的注意事项
1.JavaScript是一种脚本语言,是一种动态类型、弱类型
2.JavaScript通常用来操作HTML页面的
html骨架(页面结构),css是样式(元素大小、颜色、位置、隐藏或显示等),js是行为(部分动画效果、页面与用户交互等)
JS代码写在哪里:
script标签里面
写在外部.js后缀文件里面,通过script标签引入
写在标签里面
注意:在引入js文件的script里面,一定不能再写js代码
标签里面写js代码一般情况下不推荐(指行内的样式)
script标签的位置:
head或者body里面
要注意是否需要加上window.onload(如果script里面涉及到操作后面的元素,而又非得把script放在前面的话,需要加上:window.onload)
如果说没有什么特别的要求,一般script标签放在body结束之前
例:
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><style>*{margin:0;padding:0;}</style><script>//alert(8);//如果script里面涉及到操作后面的元素,而又非得把script放在前面的话,需要加上:window.onloadwindow.onload=function(){alert(8);//这里再写代码(意思是:当整个页面加载完成之后,再执行这里的代码)}//一个页面中只能出现一次window.onload</script>
</head>
<body><script src="index.js"></script><script>/*1.JavaScript是一种脚本语言,是一种动态类型、弱类型2.JavaScript通常用来操作HTML页面的html骨架(页面结构),css是样式(元素大小、颜色、位置、隐藏或显示等),js是行为(部分动画效果、页面与用户交互等)JS代码写在哪里:script标签里面写在外部.js后缀文件里面,通过script标签引入写在标签里面注意:在引入js文件的script里面,一定不能再写js代码标签里面写js代码一般情况下不推荐(指行内的样式)script标签的位置:head或者body里面要注意是否需要加上window.onload如果说没有什么特别的要求,一般script标签放在body结束之前*/alert(55);//弹窗调试代码//Alert(5);console.log(888);//打印调试代码</script>
</body>
</html>
运行结果:
1.2 JavaScript 修改元素内容
1. 首先获取id为xxx的元素
document.getElementById(“”);
2. var 是 js 定义变量的关键字
3. innerHTML 和 innerText 可以修改/获取
1.3JavaScript获取元素
1. id :
document.getElementById(“”); 通过id获取元素
2. class :
document.getElementsByClassName(“”); 通过class名字获取元素
3.tagName :
document.getElementsByTagName(“”); 通过标签名获取元素
4. name :
document.getElementsByName(“”); 通过 name的属性获取元素,一般用于input
5. selector :
document.querySelector (“”); 通过CSS选择器获取一个
document.querySelectorAll(“”);通过CSS选择器获取所有
2.简单事件
onclick 单击事件
ondbclick 双击事件
onmouseenter 鼠标划入
onmouseleave 鼠标划出
onresize 窗口变化
onchange 改变下拉框
例:以cnsole打印的方式
所谓事件,是指JavaScript捕获到用户的操作,并做出正确的响应。
在事件函数里面,有一个关键字this,代表当前触发事件的这个元素
事件:用户的操作
元素.事件=函数;
鼠标事件:
左键单击onclick
左键双击ondblclick
鼠标移入onmouseover/onmouseenter***
鼠标移出onmouseout/onmouseleave***
例:以this的方式触发事件
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><style>*{margin:0;padding:0;}div{width:300px;height:100px;line-height:100px;text-align:center;margin:50pxauto;background:#51cfff;}</style>
</head>
<body><div class="box1"></div><div class="box1"></div><div class="box1"></div><script>/*所谓事件,是指JavaScript捕获到用户的操作,并做出正确的响应。在事件函数里面,有一个关键字this,代表当前触发事件的这个元素事件:用户的操作元素.事件=函数;鼠标事件:左键单击onclick左键双击ondblclick鼠标移入onmouseover/onmouseenter***鼠标移出onmouseout/onmouseleave****/var aBox=document.querySelectorAll(".box1");/* aBox[i]代表了按顺序排列的第几号盒子 */ aBox[0].onclick=function(){this.innerHTML="我被点击了";};aBox[1].onmouseenter=function(){aBox[0].innerHTML="下面被移入了";this.innerHTML="我被移入了";};aBox[2].onmouseleave=function(){this.innerHTML="我被移出了";};</script>
</body>
</html>
运行结果:
3.修改样式
3.1操作标签
例:
js操作元素的标签属性:
规范的标签属性:
.符号直接操作(可读可写)
不规范(自定义)的标签属性:
获取:.getAttribute()
设置:.setAttribute()
移除:.removeAttribute()
注意:
所有的路径、颜色获取的结果不一定是你写的内容
通过id获取的元素赋值给变量后,假设修改了id,这个变量还是表示这个元素
自定义标签属性的操作方式,同样可以操作符合规范的标签属性
例:
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><style>*{margin:0;padding:0;}</style>
</head>
<body><a href="01-作业.html"target="_blank"id="box"class="wrap"tz="xp">去百度</a><script>/*js操作元素的标签属性:规范的标签属性:.符号直接操作(可读可写)不规范(自定义)的标签属性:获取:.getAttribute()设置:.setAttribute()移除:.removeAttribute()注意:所有的路径、颜色获取的结果不一定是你写的内容通过id获取的元素赋值给变量后,假设修改了id,这个变量还是表示这个元素自定义标签属性的操作方式,同样可以操作符合规范的标签属性*/var oA=document.getElementById("box");//alert(oA.target);//可读性oA.target="_self";alert(oA.href);//oA.href="http://jd.com";//可写性//alert(oA.className);//class属性要用classNameoA.className="www";oA.className="";//alert(oA.getAttribute("tz"));//oA.setAttribute("tz","py");//oA.removeAttribute("tz");//alert(oA.getAttribute("href"));//oA.setAttribute("target","_black");</script>
</body>
</html>
运行结果:
3.2 JS 操作样式
例:
例:
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><style>*{margin:0;padding:0;}div{width:100px;height:50px;background:#51cfff;}.box{width:300px;height:300px;background:blue;}</style>
</head>
<body><div id="box"></div><script>/*行内样式标签属性:大部分情况下,js都是通过行内样式来达到修改样式的目的*/var oBox=document.getElementById("box");oBox.onclick=function(){//oBox.style.width="300px";//oBox.style.height="300px";//oBox.style.backgroundColor="red";//oBox.style.cssText="width:300px;height:300px;background:red;"oBox.className="box";//操作复合属性时,要注意用驼峰写法(去掉-号,-号后面的第一个单词大写)//oBox.style.marginLeft="100px";//oBox.style["margin-left"]="150px";var a="margin-top";oBox.style[a]="50px";}</script>
</body>
</html
运行结果:点击后触发事件
4.JS数据类型
js六大数据类型
number——数字在js里面的小数和整数统一都是数字-2^53--2^53超出范围之后精度就会不准确
string——字符串
boolean——布尔值true false
null
undefined——未定义一个变量声明之后没有赋值就是undefined
object——对象
在js里面null属于对象类型,但是它不具有很多对象的共性,所以很多资料将它归为单独一类数据类型null
例: 数据js类型打印
例:
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><style>*{margin:0;padding:0;}</style>
</head>
<body><script>/*js六大数据类型number——数字在js里面的小数和整数统一都是数字-2^53--2^53超出范围之后精度就会不准确string——字符串boolean——布尔值truefalsenullundefined——未定义一个变量声明之后没有赋值就是undefinedobject——对象在js里面null属于对象类型,但是它不具有很多对象的共性,所以很多资料将它归为单独一类数据类型null*///vara=8;//number//vara="5";//string//vara=true;//boolean//vara="false";//string//vara;//undefined//vara=[1,2,3,4];//object//vara={"name":"xiaopo","age":18};//objectalert(typeof a);</script>
</body>
</html>
5.例:用JS 和表格实现属性转换
CSS文件:
@font-face {font-family: "iconfont";src: url('//at.alicdn.com/t/font_922719_nb9px1crt1s.eot?t=1542488467316'); /* IE9*/src: url('//at.alicdn.com/t/font_922719_nb9px1crt1s.eot?t=1542488467316#iefix') format('embedded-opentype'), /* IE6-IE8 */url('data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAAmoAAsAAAAADsAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADMAAABCsP6z7U9TLzIAAAE8AAAARAAAAFY8gUnuY21hcAAAAYAAAAB1AAABwJ2IntdnbHlmAAAB+AAABYcAAAg0AVL+H2hlYWQAAAeAAAAAMQAAADYTS4kgaGhlYQAAB7QAAAAgAAAAJAfeA4NobXR4AAAH1AAAABIAAAAYGAD/+2xvY2EAAAfoAAAADgAAAA4FUgQcbWF4cAAAB/gAAAAfAAAAIAEUAgduYW1lAAAIGAAAAUUAAAJtPlT+fXBvc3QAAAlgAAAARgAAAF1ocFkSeJxjYGRgYOBikGPQYWB0cfMJYeBgYGGAAJAMY05meiJQDMoDyrGAaQ4gZoOIAgCKIwNPAHicY2BkYWCcwMDKwMHUyXSGgYGhH0IzvmYwYuRgYGBiYGVmwAoC0lxTGByesT3/xdzwv4EhhrmJoRUozAiSAwDwiAzreJztkNENgzAMRJ8JQVXEDjBAp+h3Z0F8dGazAz/0HNMtetGL7JOdSAdUoIinGME+GKFNrnW/0Lo/8lLfeDAw+OSr78d5XaB6+dW3THONWSdeNW3U+MUm/pr7/b67Gvklkb8vSWTva6L08D2J+eNMKF96jx2DAAAAeJyNlc9vE0cUx/fNzM7sr3jt7Ho3cYid7CZrCMTGu/ZuAoodiJoguFAFiVZC7Y3QggpVJDhwQKUqUsVPiQscqEQvbTn3UAlxQKqKeoD/oGpP3IpaOPUHTt+sEyRQVXU8Hs+8mfedz7y361FAUTa+o0APKEVF0YEHUTvTIWqnsQ+eS37rnynNBkU40b9VDGZLcKMI7/Q/LgWzw7AGa8OzQQlHDUVR3tBJY88VOirwoI5qUIQbUqd/C05Inf6ZInwN16VO/3b/ttTBkdRh+FXoQ7KhVJRMeVv5DKUDLhoQFkBUwcfqxVkXZG2Ag8YG1LHiEKdaONcadAsw7SVxD7qQxB76pO16LmID99SAl10utpw76BF7Naji4iag6d+2It/vOT41dXzvyWsUGpXV3x07tJ3nq5VZQq+PHX5mWc8OV6aAnF5deH+Ejaoj7y0c+YjCdP9nxkxO7Lkpf2eJ26bqzdeahxxgKriaWfHju3NzX7b8CuxvhfM2YYWCysA51Nx3lEB1tHNvUbXUxXud0SqAQfrxrl0xvXayeyw89dDE8vBUeKx78lr/w7UHnD9YmzrYXD1NYLFtmp0eshxpHPyCGGxierjETZv7I9CaIcJ2TbEtmVy6PDNzeWky2dbaD9MTqmCioJGZFpCj+8NesHKzyVjz5krQCzVT5mXjr43zjNGLynkI4Ef4E/PCp0QgwkBwwX0Mn6y+5+eBTLCPwU8zL0tl/NKOM4ikTEiWRkImAsOMlWbYcBHUpU49qvtRPf80Iao3SD3K0h7wHuxOg72QJinDtg2uKKeC2+CmmE8bsrZNeIadIJPWIN4JQRjEIWr4SS6XeNiXw3IT2l6nCe4CtBcg5Rgo4WKT8kTulIpU/qBAD8IgSf0kDhI8VeyH+W89qBGvLg+JAjh22+PyuGnWbkCBVGFwWHzSuOqOQ87I05bYZHS3GEXIUwxdGHlNgroDRLeDbScq+4joDhCjrNOWdGXeI23eekWYJeiOhLuTNPG3CFvo+hphp75J6HpvErajkNMqpqABmUjqnuykg8T48j2oRwjulmVCq4OU1SNO/rjaf3p1ebmkawY3BeWmaUTOqFE2rCGtZKTLy1dWPigNC25olqOpWQk4V4vWNmGqpmppBW3CdjDJcAAfQoMxISZ6vQsXDqzwQsHQHN1zpnRDNQ0ABgSAUEpIeWnpEpiXJs3+p4CFbNoBVCF7Fn45x3XAhQBKdF0u4qpcAYwxbFUVmPRiskcGVkKoyqWebmKD6cAJxrmcBmvgqxOSA+CAqyaE83vqanVuYnyHSnLDN6/TaFswgqJKrkh0DddQVcIwfKtxf8lDaM5E8GWSgy0O6cRRkAppGMohqCFJsItVDCC2swEEjo2vyrC925ukFHQadLvboUw1ZltMf+vdDgUNnYhqOfO9pi6MEtPILcjjZla2FQvViYmL+xbHHENwnCEyPLKoujek6XDv82KtYA0zkwpQXaAaHRJj9nDkvHzCDUdIZSoPTomGRy35CwvnazV7vDJkYlpl4CQ9Kb88SCmeXnAZeIaBQCuXeQOxGTvIE4Ndin+IWHBvApaQ2RBSnltoNORqphKZDJYHQ7oBzyUwRETlkp5j/Cgx8MEwq3G52FxIKpzvHNc0tFg5CJcpVl9x4PYIQ2FQJAyl/4tFlWeUjwe8goH/wqm13sCBv8cWs+GRLFB5kI0Mp/vGmMacxsiu2FqaFahsctNwSxXf2FGrdMpMk/fixgWm0E8USxnCu3FGUabTuJbfsE15w05WSdwFfMcDvPnwH9XFKy+/2NJ2RH7RXP25VnK0F1r/p/4hWH/y9PH6+uOnT9bh26v3qe3b9M5Z07bvCvFC823tuV6G5Oyjc+ce/SqbH9j9Kzhrnr1Dbc/+BwCU97cAeJxjYGRgYADilgdPZeP5bb4ycLMwgMANsUWTYfT/3/+rWViYm4BcDgYmkCgAV/EMaAAAAHicY2BkYGBu+N/AEMPC8P/3/z8sLAxAERTABgCgYwZoeJxjYWBgYEHB/3+DaAAMSQITAAAAAAAAACQASAEUA9QEGgAAeJxjYGRgYGBj/M3AwgACTEDMBYQMDP/BfAYAIeUCHQB4nGWPTU7DMBCFX/oHpBKqqGCH5AViASj9EatuWFRq911036ZOmyqJI8et1ANwHo7ACTgC3IA78EgnmzaWx9+8eWNPANzgBx6O3y33kT1cMjtyDRe4F65TfxBukF+Em2jjVbhF/U3YxzOmwm10YXmD17hi9oR3YQ8dfAjXcI1P4Tr1L+EG+Vu4iTv8CrfQ8erCPuZeV7iNRy/2x1YvnF6p5UHFockikzm/gple75KFrdLqnGtbxCZTg6BfSVOdaVvdU+zXQ+ciFVmTqgmrOkmMyq3Z6tAFG+fyUa8XiR6EJuVYY/62xgKOcQWFJQ6MMUIYZIjK6Og7VWb0r7FDwl57Vj3N53RbFNT/c4UBAvTPXFO6stJ5Ok+BPV8bUnV0K27LnpQ0kV7NSRKyQl7WtlRC6gE2ZVeOEXpc0Yk/KGdI/wAJWm7IAAAAeJxjYGKAAC4G7ICNkYmRmZGFkZWRjZGdgSsrMzGvJL+0Mr8UxqwqzWdNzKzIzONIzy8tL03OSGUrzi8tLs1nYAAAqJ8ROAAA') format('woff'),url('//at.alicdn.com/t/font_922719_nb9px1crt1s.ttf?t=1542488467316') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/url('//at.alicdn.com/t/font_922719_nb9px1crt1s.svg?t=1542488467316#iconfont') format('svg'); /* iOS 4.1- */
}.iconfont {font-family:"iconfont" !important;font-size:16px;font-style:normal;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;
}.icon-jiantouyou:before { content: "\e61f"; }.icon-jiantouzuo:before { content: "\e620"; }.icon-aixin:before { content: "\e7fa"; }.icon-gouwuche:before { content: "\e606"; }.icon-sousuo:before { content: "\e670"; }
HTML文件
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><link rel="stylesheet" href=" http://at.alicdn.com/t/font_922719_nb9px1crt1s.css"><style>* {margin: 0;padding: 0;}input{width: 300px;height: 40px;margin:10px 10px;}.box{background-color: cornflowerblue;width: 200px;height: 50px;margin-left: 125px;text-align: center;}div{width:304px;height: 200px;background-color: #51cfff;margin-left: 75px;text-align: center;line-height: 200px;font-weight:bolder;font-size: 50px;color: indigo;position: relative;font-family: 华文彩云}div #box3{font-family:华文中宋;font-size: 25px;position: absolute;left: 115px;top:40px;height: 25px;}</style>
</head>
<body> 属 性<input type="text" placeholder="输入CSS属性" value=""><br> 属性值<input type="text" placeholder="输入CSS属性值" value=""><br><input class="box" type="button" value="设置"><br><div id="box2" style="">风雨同舟<p id="box3">明<i class="iconfont icon-aixin "></i>玥</p></div><script>var oBox2 =document.getElementById("box2");var oInput=document.getElementsByTagName("input");/*alert(oInput.length)*/oInput[2].onclick = function () {var a = oInput[0].value;var b = oInput[1].value;oBox2.style[a]=[b];oInput[0].value = "";oInput[1].value="";}</script>
</body>
</html>
运行结果:
四.JavaScript(一) 2021-02-23相关推荐
- 2021.02.23 Visual QA论文阅读
目录 [2020][NeurIPS]Multimodal Graph Networks for Compositional Generalization in Visual Question Answ ...
- 2021/02/23 MySQL内连接、左外连接、右外连接。
数据库软件:SQLyog. 数据库表:a_table.b_table . 主题:使用数据库表a_table.b_table 实现 内连接.左外连接.右外连接. 数据库 建表SQL语句 a_table ...
- 2010.02.23——google map api----五岳剑派 拖拽的标注
2010.02.23--google map api----五岳剑派 拖拽的标注 <%@ page language="java" import="java.uti ...
- JavaScript学习笔记02【基础——对象(Function、Array、Date、Math)】
w3school 在线教程:https://www.w3school.com.cn JavaScript学习笔记01[基础--简介.基础语法.运算符.特殊语法.流程控制语句][day01] JavaS ...
- JavaScript基础第02天笔记
JavaScript基础第02天笔记 一.DOM简单学习 1.功能: 控制HTML文档内容 2.代码: 通过ID值获取元素对象 document.getElementById("id值&qu ...
- leetcode刷题记录2:进度64, 2021.10.23
文章目录 数组的度(题目编号697:[link](https://leetcode-cn.com/problems/degree-of-an-array/)) 二叉搜索树(题目编号700:[link] ...
- 2021.3.2-3.8 人工智能行业每周技术动态
最近,发现很多公众号都在发Transformer的内容. 这是很好的事,说明行业内大家在不断的去尝试,不断的去突破. 之前的一个同事,最近也在一直和我聊,关于他对Transformer在股票分析的一些 ...
- JavaScript初学者编程题(23)
JavaScript初学者编程题(23) 题目:给你一个字符串 S,请你删去其中的所有元音字母( 'a','e','i','o','u'),并返回这个新字符串 HTMl部分 <input typ ...
- 电动力学每日一题 2021/10/23 载流板产生的电磁场
电动力学每日一题 2021/10/23 载流板产生的电磁场 载流板的辐射 载流板的辐射 先验证电荷守恒: ∂ρ∂t=−∇⋅J=−∂∂zJz=0\frac{\partial \rho}{\partial ...
- 2021.4.23最新mac11.1 big sur 关于CocoaPods安装和使用
2021.4.23关于CocoaPods安装和使用 第1部分 CocoaPods 的安装 CocoaPods 是iOS开发必不可少的一个第三方框架的管理工具,和Java的Maven类似,maven也是 ...
最新文章
- [2774]小P的故事——神奇的发票报销 (sdut)
- 题临安邸 【南宋】 林升
- Valgrind 安装与使用
- 简单的计算机程序代码,优秀程序员通过简单代码,窥探电脑编程中强大的数组操作功能...
- 解决docker中运行scrapy使用chrome selenium报错InvalidSessionIdException: Message: invalid session id
- 18100出多少取整_关于JavaScript数据类型,你知道多少?
- go语言linux下开发工具,LiteIDE 开发工具指南 (Go语言开发工具)
- android实时声音信号波形_电子设计竞赛教程-信号源类
- 【iVX从入门到精通 · 开篇】初始iVX——零代码的可视化编程语言
- 海康威视h5无插件播放解决方案
- android mmkv使用_腾讯开源存储框架MMKV
- 常见的路由器(刷openwrt的同学看下!)
- TikTok(国际版抖音)时间线
- linux cat获取ip,linux – “cat / proc / net / dev”和“ip -s link”显示不同的统计信息.哪一个在撒谎?...
- 查看计算机真实用户名(username)
- 1069三网合一集团短信通道固定接收号
- qq邮箱 添加 gmail_将您的Gmail添加到Windows Live Mail
- 工作五年,一年内我靠这系列 java 面试宝典从 13K 到大厂 30K
- 从抄书到开源之巅:章亦春的程序人生
- 文件内容中显示(SOH、STX、ETX)
热门文章
- 关于Unsafe类一些知识
- VSCode Eslint+Prettier+Vetur常用配置
- 人毁谤、侮辱、骂时,“阿弥陀佛,谢谢,消灾免难”
- Vue.js生命周期函数
- 基于idea-SSM的房产中介房屋租赁出租出售交易平台(javaweb-php-asp.netC#-j2ee-springboot)
- VR廉政教育三维H5交互沉浸式展厅可以用来做什么?
- 身份证,手机号,姓名 脱敏格式化处理
- touch 命令详解
- vue创建项目卡住不动,vue create project卡住不动
- 以libs方式倒入jar和aar包