javaScrip

ⅩⅠ.javaScrip

​ 引入外部js文件

①取标签中的值
<div onclick = "choose(this)" >黄色</div>
	//可以使用obj.innerText,innerText可以得到开始标签和闭合标签中间的文本
	function choose(obj){
		console.log(obj.innerText);
		//赋值也是一样的
		document.getElmentById("ID").innerText = obj.innerText;
	} 

②计算器运算函数
var i =  eval(1+2-3.4*5);
//用来直接计算一串数字的加减乘除
③封装

把常用的方法进行封装处理;相当于jQuery ,jQuery就是把javascrip中复杂的方法进行了封装处理

//如:封装 document.getElmentById("ID")
function $(obj){
	return document.getElmentById(obj);
}
function getValue(){
	var val = $("name").value;
	cosole.log(val);
}
④常用事件
document.documentElement("body");	//获取对文档根结点(<body>)的引用
document.creatElement("p");		//创建代表某个HTML元素的对象,创建后记得添加节点
document.节点名称.appendChild(node); //将节点追加到所有子节点的末尾 ,首先要创建新节点
insertBefore(newNode,node);         //将节点newNode插入到节点node之前
node.parentNode.removeChild(node);//删除节点,调用自己的父节点,从父结点删除子节点的自己
button.setAttribute("id","btn1");      //给button添加一个id的属性

document.all.页面元素名称; //all:表示文档中所有元素的集合
document.表单名.元素名称;
document.getElementById(“ID名称”);
document.getElementsByName(“元素名称”);
document.getElementsByTagName(“标签名称”);

⑤节点属性:

childNodes 当前节点的所有子节点
firstChild 当前节点的所有子节点中第一个节点
lastChild 当前节点的所有子节点中最后一个节点
parentNode 当前节点的父节点
nodeValue 节点值
nodeName 节点的名称
nodeType 节点的类型
getAttributeNode 得到属性节点

⑥节点值:

类型 值 描述
元素节点 1 HTML标签
属性节点 2 HTML标签中的属性
文本节点 3 文本信息

⑦创建节点的使用方法
var node=document.createElement("div");  /* <div></div>*/
node.innerHTML="<h3 id='textNode' style='color: red;'>新创建的节点</h3> ";     
/*<div><h3 id='textNode' style='color: red;'>新创建的节点</h3></div>*/
//	document.body.appendChild(node);		
/*<body><div><h3 id='textNode' style='color: red;'>新创建的节点</h3></div></body>*/
	var oldNode= document.getElementById("str");
	document.body.insertBefore(node,oldNode);
⑧Event 对象和事件

Event 对象代表事件的状态,比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按钮的状态。
event:在事件函数中可以使用event对象
浏览器事件
onload、onunload、onsubmit
鼠标事件
onMouseMove、onMouseDown、onMouseUp
onmouseover,onmouseout
文本框事件
onchange
其他
onclick,onfocus,onblur //点击事件,获取焦点事件,失去焦点事件

addEventListenert方法:
一个控件
第一个参数填写事件名,第二个参数是一个函数,
第三个参数是指在冒泡阶段还是捕获阶段处理事件处理程序。
true代表捕获阶段处理, false代表冒泡阶段处理。
第三个参数可以省略,大多数情况也不需要用到第三个参数,
不写第三个参数默认false

addEventListenert使用方法:

window.onload = function(){

document.getElementById('btn').addEventListener('click', function(){
alert(1);
}, false);

document.getElementById('btn').addEventListener('click', function(){
alert(2);
}, false);
}
⑨子窗口和父窗口、浮动窗体

打开子窗口,不管该窗口关闭不关闭,父窗口都可操作。

open("demo2.html","","toolbars=0,location=0,statusbars=0,menubars=0,width=500px,height=400px,scrollbars=0");

打开模态窗口,该窗口不关闭父窗口无法操作。

window.showModalDialog("ModelSon.html","","toolbars=0,location=0,statusbars=0,menubars=0,width=500px,height=400px,scrollbars=0")

注意浏览器可能会拦截,模态窗口默认只对IE浏览器生效,谷歌内核浏览器不支持。
opener 属性非常有用,创建的窗口可以引用创建它的窗口所定义的属性和函数。用于子页面与主页面之间的传值问题。

window.opener.document.getElementById("Downloads").value = '新值';

滚动
window.onscroll,页面滚动时触发,用于浮动广告

⑩计时器

设置计时器:
两种方法均可实现计时器,
setTimeout要写到调用的方法体里边才可以实现,
setInterval写到调用的方法体外边。

var time = setInterval("方法名称"1000(毫秒))); //每1000毫秒调用一次该方法
var time = setTimeout("方法名称"1000(毫秒)); //1000毫秒以后调用该方法

停止计时器:
使用哪种定时就使用哪种清除

clearInterval(time); 
clearTimeout (time);

页面的前进后退关闭:

<a href="javaScrip:history.back()">后退</a>
<a href="javaScrip:history.forward()">前进</a>
<a href="javaScrip:window.close()">close</a>
<a href="javaScrip:history.go(-1)"></a>   //go(-1)相当于后退,go(1)相当与前进

①①Stshiyiring对象以及应用

名称 描述
length 用于计算字符串中的字符个数
charAt 返回字符串对象中指定索引处的字符,索引从0开始。
indexOf 返回某个子字符串在目标字符串中的首次出现位置。
substr 从指定索引位置开始截取指定长度的字符串。
substring 返回指定索引范围内的字符串。
replace 使用指定的字符串替代目标字符串中指定的子字符串。
split 返回按照指定分隔符拆分的若干子字符串数组。

join与split相反,join将数组通过某个字符合并为字符串

①②表单验证

通过返回值判断是否提交表单

<form name="form1" action="registerUser.jsp"
onsubmit = "return  checkForm();">
function  checkForm(){

  //......验证过程
  return true|false;
	}
</form>
①③正则表达式

RegExp是JavaScript中提供的一种用来完成有关正则表达式操作和功能的对象
两种创建方式:

var reg=new RegExp(“表达式”,”附加参数”);

var reg=/表达式/附加参数
Regular:正规的
Expression:表达式

RegExp对象的附加参数:

var recat = new RegExp(“cat“,”g”);
var pattern=/cat/g;

g:global,全局匹配,
如果无g,只会匹配第一个单词cat,有g,匹配所有单词cat
i:不区分大小写匹配
m:可以进行多行匹配

常用方法:
注意:test,exec是正则表达式的方法
正则表达式.test(字符串)
正则表达式.exec(字符串)
名称 描述
test 它指出在被查找的字符串中是否存在模式,返回true/false。
exec 用正则表达式模式在字符串中运行查找,并返回包含该查找结果的一个数组
match 使用正则表达式模式查找字符串,并返回包含查找结果的数组
search 返回与正则表达式查找内容匹配的第一个子字符串的位置
replace 返回根据正则表达式进行文字替换后的字符串
exec方法返回的数组元素属性,有index


!!
!!!
正则表达式使用时前后使用/来代替"
如:

var cname = /^[\u4e00-\u9fa5]{0,}$/     //正确
var cname = "^[\u4e00-\u9fa5]{0,}$"     //报错

创建RegExp对象使用方法:

var  str=”white CATs,black cats";
var regex=new RegExp("cat",'gi'); //查询是否含有cat字符,gi为全局查询
// var pattern=/cat/gi;
var result=regex.test(str);
document.write(result);
//document.writeln(pattern.test(str));

Boolean b = 正则表达式.test(字符串)

正则表达式判断使用方法:

var realName = $("realname").value;
var email = $("email").value;

var cname = /^[\u4e00-\u9fa5]{0,}$/;
var cemail = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
if(cname.test(realName) && cemail.test(email)){
	alert("注册成功");
	return true;
}else{
	alert("注册信息格式不对");
	return false;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值