javaScript笔记详解(1)

javaScript基础详解

首先讲javaScript的摆放位置:<script>  </script> 可以放在headbody之间,也可以body中或者head

JavaScript的六大作用:

1直接在script输出

document.write("<h1>This is a heading</h1>");//document.write表输出,括号中h1标签同样有效

2对事件作出反应

<button type="button" onclick="alert('Welcome!')">  //点击这里</button>//onclick代表当点击是触发事件,alert会弹框

3改变 HTML 内容                           

x=document.getElementById("demo")  //查找元素 ,通过id得到某一个元素,就像我之前做的笔记说id只能用一次所以是唯一的。 

x.innerHTML="Hello JavaScript";       //改变内容,通过触发事件会是这个元素的值发生改变

4改变 HTML 图像

element=document.getElementById('myimage')      //得到img这个元素

 element.src="/i/eg_bulboff.gif";                  //改变Src属性,也就相当于给它换了张图片

5 改变 HTML 样式

x=document.getElementById("demo")   //同样通过id找到元素

x.style.color="#ff0000";                  //改变样式

6 验证输入

If( isNaN(x)) {alert("Not Numeric")};   // isNaN( ) 这是一个方法,专门用来判断括号中是否全为数字,不是为true

javaScript查找元素常用的三种方法(不包括jquery查找元素)

1:通过id查找;

x=document.getElementById("demo")  //通过id查询是唯一的,x也是代表唯一一个元素。

2:通过name查找:

X= document.getElementsByName("myInput");//这里是ments说明他返回的是一个集合,因为name属性可以重复定义

X[0].innerHTML="Hello JavaScript";//因为是数组,所以要指定第几个,就算只有一个也要写零

3:通过元素名称查找:

var x=document.getElementsByTagName("input");   //同样也是返回一个数组

 alert(x.length);    //这里有几个input标签就输出几

JavaScript的注释和java是一样的有///*  */

JavaScript变量

javaScript数据有字符串、数字、布尔、数组、对象、NullUndefined 但统一用 var

var cars=new Array(); cars[0]="Audi"; //数组表达式

var cars=["Audi","BMW","Volvo"];   //同样也是数组表达式

person=new Object();     //对象表达式

JavaScript函数

function getElements(){   }  //可以带参数那就往里面传参(var1,var2),如果要返回值return,函数类型不变

JavaScript运算符,算数运算符,赋值运算符,比较运算符,逻辑运算符,条件运算符IF语句,Switch语句,For循环,while  do-while,BreakContinue和java规则一样(有点不同的就是for (x in person))

接下来我们做几个小案例:

1:有户名验证,两次密码判断是否一致 

 1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
 2 <!DOCTYPE HTML >
 3 <html>
 4   <head> 
 5     <title>雨点的名字</title>
 6   </head>
 7     <script>
 8      function checkForm(){
 9 
10       var form=document.forms["form1"]; //根据表单的名字 获取指定的表单,这算第四种获得元素方法
11  //根据表单获得username的value值,因为下面这个username只有一个那就默认就取这一个,不用form.username[0].value这样反而报错,因为不是集合
12       var username =form.username.value;
13         if(username.length<3  || username.length>12){
14           alert("输入的用户名不合法..."); //.length是属性所以不能括号,这和String不同
15           return false;
16         }
17       var password1 =form.password[0].value;//因为password下面有两个所以是一个集合所以要[0];
18       var password2=document.getElementsByName("password")[1].value;//这是通过另一种方法获得
19             if(password1!=password2){
20       
21         alert("两次密码不一致..");
22         return false();
23       }
24         return true;
25      } 
26     </script>
27 <body>    
28        <!--onsubmit只在form中使用,如果返回为false则不提交数据,否则提交数据-->
29       <form action="" name="form1" onsubmit="checkForm()">
30         用 户 名:<input type="text" name="username"/><br><br>
31         密   码:<input type="password" name="password"/><br><br>
32         确认密码:<input type="password" name="password"/><br><br>
33         <input type="submit" value="提交"/>  <!-- 这里定义了为submit类型,当点提交时,自动触发onsubmit方法     -->    
34         </form>
35 </body>
36 </html>

运行结果如下:

2:实现一个加法的小计算器

 1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
 2 <!DOCTYPE HTML >
 3 <html>
 4   <head> 
 5     <title>雨点的名字</title>
 6     <style type="text/css">  
 7     input{ 
 8     width:50px;
 9     }  
10     </style>
11   </head>
12     <script>
13         function calc(){
14          var form1 =document.forms["form1"]; 
15          var x=form1["x"].value;  //获取form1表单中name属性为x的值,又一种方法(其实[]和.是有点不同的这里不细讲)
16          var y=form1["y"].value;
17          var z=parseInt(x)+parseInt(y); //parseInt(x)类型转换,把String转成int
18           var result=form1["result"]; //得到元素
19           result.value=z;  //value这里插入value值,不是用innerHTML,他们的使用类型不同
20         }
21     </script>
22 
23 <body>
24      <form action=" " name="form1" method="post">
25     <input type="text"name="x"/>+<input type="text" name="y"/>=<input type="text"  name="result"/><br/>
26     <input type="button" value="计算" onclick="calc()" /> <!-- onclick监听事件改编属性 -->
27     </form>
28 </body>

运行结果如下:

关于基础这里先讲到这里,欢迎大家指点纠错,或者不全也欢迎指点,谢谢。

 

原文地址:https://www.cnblogs.com/qdhxhz/p/6306185.html