zoukankan      html  css  js  c++  java
  • 2.5学习

    什么是 JavaScript?
        JavaScript被设计用来向HTML页面添加行为。
        JavaScript是一种脚本语言(脚本语言是一种轻量级的编程语言)。
        JavaScript由数行可执行计算机代码组成。
        JavaScript通常被直接嵌入HTML页面。
        JavaScript是一种解释性语言(就是说,大妈执行不进行预编译)。
        所有的人无需购买许可证均可使用JavaScript。

    Java 与 javascript 有什么区别?它们没有关系,雷锋和雷峰塔的关系。

    Javascript:它能够让整个页面具有动态效果。

    ECMAScript:它是整个 javascript 的核心,包含(基本语法、变量、关键字、保留字、数
    据类型、语句、函数等等)
    DOM:文档对象模型,包含(整个 html 页面的内容)、
    BOM:浏览器对象模型,包含(整个浏览器相关内容)

    ECMAScript 语法

      区分大小写:变量、函数名、运算符以及其他一切东西都是区分大小写的。

      变量是弱类型的:ECMAScript 中的变量无特定的类型,定义变量时只用 var 运算符,可以将它初始化为任意值。因此,可以随时改变变量所存数据的类型(尽量避免这样做)。

      每行结尾的分号可有可无:ECMAScript 就把折行代码的结尾看做该语句的结尾(与 Visual Basic 和 VBScript 相似),前提是这样没有破坏代码的语义。最好的代码编写习惯是总加入分号,因为没有分号,有些浏览器就不能正确运行。

      注释:有两种类型的注释:1.单行注释以双斜杠开头(//)2.多行注释以单斜杠和星号开头(/*),以星号和单斜杠结尾(*/) 

      括号表示代码块:代码块表示一系列应该按顺序执行的语句,这些语句被封装在左括号({)和右括号(})之间。

    ECMAScript 变量

    ECMAScript 中的变量是用 var 运算符(variable 的缩写)加变量名定义的。

    ECMAScript 中的变量并不一定要初始化(它们是在幕后初始化的,将在后面讨论这一点)。

    ECMAScript 另一个有趣的方面(也是与大多数程序设计语言的主要区别),是在使用变量之前不必声明。

    ECMAScript 原始类型

    ECMAScript 有 5 种原始类型(primitive type),即 Undefined、Null、Boolean、Number 和 String。

    • undefined - 如果变量是 Undefined 类型的
    • boolean - 如果变量是 Boolean 类型的
    • number - 如果变量是 Number 类型的
    • string - 如果变量是 String 类型的
    • object - 如果变量是一种引用类型或 Null 类型的

    注释:您也许会问,为什么 typeof 运算符对于 null 值会返回 "Object"。这实际上是 JavaScript 最初实现中的一个错误,然后被ECMAScript 沿用了。现在,null 被认为是对象的占位符,从而解释了这一矛盾,但从技术上来说,它仍然是原始值。

    ECMAScript 等性运算符

    全等号由三个等号表示(===),只有在无需类型转换运算数就相等的情况下,才返回 true。

    获取元素内容
      获取元素
          document.getElementById(“id 名称”);{如果 id 是一个字符串,那么必须加上引号,如果是一个变量那么不需要。}

      获取元素里面的值
          document.getElementById(“id 名称”).value;

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="UTF-8">
    		<title>获取元素</title>
    		<script>
    			window.onload = function(){
    				//获取页码指定位置的元素
    				var uEle = document.getElementById("username");
    				//alert(uEle);
    				//获取页面指定位置的内容(值)
    				var uValue = uEle.value;
    				alert(uValue);
    			}
    		</script>
    	</head>
    	<body>
    		用户名:<input type="text" name="username" id="username"/><br />
    		密码:<input type="password" name="password" />
    	</body>
    </html>
    

    javascript 事件
    表单提交事件:onsubmit
    关于事件 onsubmit:一般用于表单提交的位置,那么需要在定义函数的时候给出一个返回值。 onsubmit = return checkForm()

    JavaScript 通常用于操作 HTML 元素。
      操作 HTML 元素:向页面指定位置写入内容:innerHTML(属性)
        如需从 JavaScript 访问某个 HTML 元素,您可以使用 document.getElementById(id) 方法。使用 "id" 属性来标识 HTML 元素,通过指定的 id 来访问 HTML 元素,并改变其内容:
        document.getElementById("demo").innerHTML="My First JavaScript";
      写到文档输出:向页面写入内容:document.write(“”);
        直接把 <p> 元素写到 HTML 文档输出中:
        document.write("<p>My First JavaScript</p>");
      警告框:alert();

    正则表达式:

    匹配邮箱:/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/

    使用 JS 完成注册表单数据校验

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="UTF-8">
    		<title>注册界面</title>
    		<script>
    			function checkForm(){
    //				alert("aa");
    //				校验用户名
    //				1.获取用户输入的数据
                    var uValue = document.getElementById("user").value;
    //              alert(uValue);
                    if(uValue==""){
    //              	2.给出错误提示信息
                    	alert("用户名不能为空!");
                    	return false;
                    }
                    
    //              校验密码
                    var pValue = document.getElementById("password").value;
                    if(pValue==""){
                    	alert("密码不能为空!");
                    	return false;
                    }
                    
    //              校验确认密码
                    var rpValue = document.getElementById("repassword").value;
                    if(rpValue!=pValue){
                    	alert("两次密码输入不一致!");
                    	return false;
                    }
                    
    //              校验邮箱
                    var eValue = document.getElementById("email").value;
                    if(!/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/.test(eValue)){
                    	alert("邮箱格式不正确");
                    	return false;
                    }
    			}
    		</script>
    	</head>
    	<body>
    		<table border="1px" align="center" width="1300px" cellpadding="0px" cellspacing="0px">
    			<!--1.logo部分-->
    			<tr>
    				<td>
    					<!--嵌套一个一行三列的表格-->
    					<table border="1px" width="100%">
    						<tr height="50px">
    							<td width="33.3%">
    								<img src="../img/logo2.png" height="47px" />
    							</td>
    							<td width="33.3%">
    								<img src="../img/header.png" height="47px" />
    							</td>
    							<td width="33.3%">
    								<a href="#">登录</a>
    								<a href="#">注册</a>
    								<a href="#">购物车</a>
    							</td>
    						</tr>
    					</table>
    				</td>
    			</tr>
    			<!--2.导航栏部分-->
    			<tr height="50px">
    				<td bgcolor="black">
    					    
    					<a href="#"><font size="5" color="white">首页</font></a>    
    					<a href="#"><font color="white">手机数码</font></a>    
    					<a href="#"><font color="white">电脑办公</font></a>    
    					<a href="#"><font color="white">鞋靴箱包</font></a>    
    					<a href="#"><font color="white">家用电器</font></a>    
    				</td>
    			</tr>
    			<!--3.注册表单-->
    			<tr>
    				<td height="600px" background="../img/regist_bg.jpg">
    					<!--嵌套一个十行二列的表格-->
    					<form action="#" method="get" name="regForm" onsubmit="return checkForm()">
    					<table border="1px" width="750px" height="360px" align="center" cellpadding="0px" cellspacing="0px" bgcolor="white">
    						<tr height="40px">
    							<td colspan="2">
    								<font size="4">用户注册</font>   USER REGISTER
    							</td>
    						</tr>
    						<tr>
    							<td>
    								用户名
    							</td>
    							<td>
    								<input type="text" name="user" size="34px" id="user"/>
    							</td>
    						</tr>
    						<tr>
    							<td>
    								密码
    							</td>
    							<td>
    								<input type="password" name="password" size="34px" id="password"/>
    							</td>
    						</tr>
    						<tr>
    							<td>
    								确认密码
    							</td>
    							<td>
    								<input type="password" name="repassword" size="34px" id="repassword"/>
    							</td>
    						</tr>
    						<tr>
    							<td>
    								Email
    							</td>
    							<td>
    								<input type="text" name="email" size="34px" id="email"/>
    							</td>
    						</tr>
    						<tr>
    							<td>
    								姓名
    							</td>
    							<td>
    								<input type="text" name="username" size="34px" />
    							</td>
    						</tr>
    						<tr>
    							<td>
    								性别
    							</td>
    							<td>
    								<input type="radio" name="sex" value="男" />男
    								<input type="radio" name="sex" value="女" />女
    							</td>
    						</tr>
    						<tr>
    							<td>
    								出生日期
    							</td>
    							<td>
    								<input type="text" name="birthday" size="34px" />
    							</td>
    						</tr>
    						<tr>
    							<td>
    								验证码
    							</td>
    							<td>
    								<input type="text" name="yzm" size="34px" />
    								<img src="../img/yanzhengma.png" />
    							</td>
    						</tr>
    						<tr>
    							<td colspan="2">
    								<input type="submit" value="注册" />
    							</td>
    						</tr>
    					</table>
    					</form>
    				</td>
    			</tr>
    			<!--4.广告图片-->
    			<tr>
    				<td>
    					<img src="../img/footer.jpg" width="100%" />
    				</td>
    			</tr>
    			<!--5.友情链接和版权信息-->
    			<tr>
    				<td align="center">
    					<a href="#">1234</a>
    					<a href="#">2234</a>
    					<a href="#">3234</a>
    					<a href="#">4234</a>
    					<a href="#">5234</a>
    					<a href="#">6234</a>
    					<a href="#">7234</a>
    					<a href="#">8234</a>
    					<p>
    						123456789
    					</p>
    				</td>
    			</tr>
    		</table>
    	</body>
    </html>
    

     切换图片:

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="UTF-8">
    		<title>切换图片</title>
    		<style>
    			div{
    				border: 1px solid white;
    				 500px;
    				height: 350px;
    				margin: auto;
    				text-align: center;
    			}
    		</style>
    		<script>
    			var i=1;
    			function changeImg(){
    				i++;
    				document.getElementById("img1").src="../../img/"+i+".jpg";
    				if(i==3){
    					i=0;
    				}
    			}
    		</script>
    	</head>
    	<body>
    		<div>
    			<input type="button" value="下一张" onclick="changeImg()" />
    			<img src="../../img/1.jpg" width="100%" height="100%" id="img1"/>
    		</div>
    	</body>
    </html>
    

      轮播图完成

    步骤分析
    第一步:确定事件(onload)并为其绑定一个函数
    第二步:书写绑定的这个函数
    第三步:书写定时任务(setInterval)
    第四步:书写定时任务里面的函数
    第五步:通过变量的方式,进行循环(获取轮播图的位置,并设置 src 属性)

    <script>
    			function init(){
    //				书写轮播图片显示的定时操作
    				setInterval("changeImg()",3000);
    			}
    			
    //			书写函数
    			var i=1;
    			function changeImg(){
    				i++;
    				document.getElementById("img1").src="../img/"+i+".jpg";
    				if(i==3){
    					i=0;
    				}
    			}
    		</script>
    
    
    <!--3.轮播图部分-->
    			<div id="">
    				<img src="../img/1.jpg" width="100%" id="img1"/>
    			</div>
    

      

  • 相关阅读:
    (寒假练习 AcWing 870)约数个数(数论)
    (补题 CF 1271B) Blocks
    (补题 POJ-2228)Naptime(环状DP)
    实验 ·SQL语言综合练习
    (补题 水题 汇总)四川大学第二届SCUACM新生赛
    (补题 CF 455A)Boredom(DP)
    (补题 HDU 1176)免费馅饼(DP)
    deppin下使用vscode编写C++
    (补题 CF 355B) Vasya and Public Transport
    【数据结构】ACwing-41. 包含min函数的栈【单调栈】
  • 原文地址:https://www.cnblogs.com/zql-42/p/12266752.html
Copyright © 2011-2022 走看看