day13 JS Dom
js两种存在形式
1:文件
2:块
放到body标签底部 防止加载js超时页面反应慢的问题 声明变量
name = "sb"; //全局变量
var age=18; //局部变量 字符串
var name = "alex"
name.charAt(1) //获取第一个元素
name.substring(0,3) //切片
name.indexOf('a') //获取'a'的下标
name.length //获取name长度 数组 字典
var li= [11,22,33] //var li = Array('11,22,33') 创建效果一样
li.push(44) //往后插入44
li.unshift(00) //往前插入00
li.splice(1,0,'sb') //往指定位置(下标为1)插入'sb' 中间元素必须是0
li.pop() //从后面移除一个
li.shif() //前边移除一个
li.splice(1,2) //从第一个下标拿走两个,2指的是个数
li.slice() //切片拿
concat //合并 n=['test'] m=li.concat(n)
li.reverse() //反转 var dic = {'k1':'v1'} 序列化反序列化
JSON.stringify(dic) //序列化
JSON.parse(s) //反序列化 循环语句(列表两种for循环,字典一种)
li = [11,22,33,44];
for (var item in li){
console.log(item,li[item]);
} //循环出来的是li列表的下标或字典的key for (var i=0;i<li.length;i++){
console.log(i,li[i])
} 异常处理
try{ }catch(e){ }finally{ } 函数
普通函数
function func1(arg){
console.log(arg);
return "sb";
}
var ret = func1(123);
console.log(ret);
匿名函数
自执行函数
(function(arg){
console.log(111,arg); })('SB');
面向对象
http://www.cnblogs.com/wupeiqi/articles/5369773.html
第二篇:Dom
document
1查找元素 基本的有三个
tags = document.getElementsByTagName('h1'); //通过tag找
document.getElementById //通过Id找
document.getElementsByClassName //通过class找 document.getElementsByName(username) //通过name获取,用于input标签
2操作元素
tags[0].innerText = '123' innerText 对div中间的内容的值进行获取修改用 例子:按钮,数字自加
<body>
<div>
<div id="num">1</div>
<input type="button" value="+1" onclick="Add()" \>
</div>
<script>
function Add() {
var nid = document.getElementById('num');
var text= nid.innerText;
text = parseInt(text);
text +=1;
nid.innerText = text; }
</script>
</body> 例子:搜索框 onfocus onblur
<body>
<input type="text" id="search" value="please input keywords" onfocus="Focus();"onblur="Blur();" \>
<script>
function Focus(){
var nid = document.getElementById('search'); //找到它
var value = nid.value; //获取他的内容
if (value =="pelease input keywords"){
nid.value = "";
}
} function Blur(){
var nid = document.getElementById('search'); //找到它
var value = nid.value; //获取他的内容
if (!value.trim()){
nid.value="please input keywords"
}
} </script>
</body> 创建标签(两种方式)
<body>
<div id="container"></div>
<a href="http://www.sou.com" onclick="return AddElement();">添加</a>
<script>
function AddElement(){
/*
//创建标签,添加至container中
var nid = document.getElementById('container');
var tag = "<input type='text'\>";
nid.innerHTML = tag;
return false
*/
var createObj = document.createElement('a'); //通过对象的方式创建标签
createObj.href = "http://www.so.com";
createObj.innerText = "搜索"; var nid=document.getElementById('container');
nid.appendChild(createObj); console.log(createObj);
return false; }
</script>
</body> 标签属性
<div> 没有name属性,如果要设置默认不存在时的属性(自定义属性) 需要用 setAttribute('name','aaa')
className = class //obj.classNmae = '';
对于style, nid.style.fontSize = ''; //-后的字母换成大写去掉杠
对于所有标签属性都的可以用 getAttribute get... del... 提交表单
//可以用submit 还可以用js 加onclick实现
//搜狗的地址:https://www.sogou.com/web?query=aa
<body>
<form id="form1" action="https://www.sogou.com/web" method="get">
<input name="query" type="text"/>
<div onclick="Submit();">提交</div>
</form>
<script>
function Submit(){
document.getElementById('form1').submit();
}
</script>
</body> 第二个例子 <body>
<form id="form1" action="https://www.sogou.com/web" method="get">
<input name="query" type="text"/>
<input type="submit" onclick="return MySubmit();" value="提交"/>
</form>
<script>
function MySubmit(){
var q =document.getElementsByName('query')[0];
if(q.value.trim()){
return true;
}else{}
alert("输入内容")
return false
}
</script>
</body> 定时器跑马灯
//setInterval
//clearInterval
//setTimeout <head>
<meta charset="UTF-8">
<title>你有新短消息</title>
</head>
<body>
<script>
setInterval("Func()",1000);
function Func(){
var text = document.title;
var firstChar = text.charAt(0);
var subText = text.substring(1,text.length);
var newTitle = subText + firstChar;
document.title = newTitle
}
</script>
</body>
http://www.cnblogs.com/wupeiqi/articles/5369773.html
day13 JS Dom的更多相关文章
- 货架工程项目之js dom实现项目工程进度图
笔者最近要负责有个项目工程网站的安装进度过程,实现的效果要求大概如下图所示 由于笔者没有参与到数据库的制作,得知他们这个项目设计工序的时候就一个开始日期的和完成日期,连整个项目的安装结束时间都没有简直 ...
- js DOM优化相关探索
我在这尝试两个方面:-->DOM与js -->DOM与浏览器 (最近在秒味视频上学到不少,哈哈哈) 一.DOM与js 1.js与dom的交互问题 频繁的与dom交互,是一件浪费时间与金钱的 ...
- js DOM的几个常用方法
<div id="div1">这是个测试</div> <p </p> <p </p> //js DOM的几个常用方法 / ...
- JS DOM 来控制HTML元素
JS DOM 来控制HTML元素 (ps:这个有很多方法,挑一些详解,嘻嘻) 1.getElementsByName():获取name. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ...
- JS Dom节点操作demo!
通过黑马课程的学习,在这里分享一个js Dom中节点操作的小练习 需求:使用js创建一个4*3的表格table. onload = function(){ function c(tagName){ r ...
- Js DOM 详解
DOM事件类 基本概念 DOM事件的级别 1.DOM0 element.onclick = function(){} 2.DOM2 element.addEventListener("cli ...
- JS DOM对象控制HTML元素详解
JS DOM对象控制HTML元素详解 方法: getElementsByName() 获取name getElementsByTagName() 获取元素 getAttribute() 获取元素 ...
- css3动画和JS+DOM动画和JS+canvas动画比较
css3兼容:IE10+.FF.oprea(animation):safari.chrome(-webkit-animation) js+dom:没有兼容问题: js+canvas:IE9+:(性能最 ...
- JS(DOM 和 BOM)
JS(DOM 和 BOM) 常说的JS(浏览器执行的JS)包含两部分:1.JS基础知识(语法)(ECMA262标准)2.JS-Web-API(W3C标准) W3C 标准中关于 JS 的规定有:(只管定 ...
随机推荐
- struts2 convention插件
1.struts2自2.1以后推荐使用Convention Plugin支持struts零配置支持(引入jar:struts2-convention-plugin-2.x.x.jar)①convent ...
- 关于neo4j初入门(4)
关于admin管理员 数据库备份和恢复 Neo4j数据库备份 步骤1 -点击“Neo4j Community”,如下图所示 Windows“开始”按钮>> "All Progra ...
- Flask登录认证
login函数 @app.route('/login/', methods=['GET', 'POST']) def login(): if request.method == 'GET': retu ...
- ChoiceFiled MultipleChoiceField ModelChoiceField ModelMultipleChoiceField
1.ChoiceFiled 单选 字段 2.MultipleChoiceField 多选 3.ModelChoiceField 单选 query_set 4.ModelMultipleChoiceFi ...
- maven install 报错 Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12.4:test
pom文件引入以下依赖 <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId> ...
- (分块)楼房重建 HYSBZ - 2957
题意 长度为n的坐标轴上,从1-n上的每一点都有一栋楼房,楼房的初识高度都为0,每一天都有一栋楼房的高度被修改(也可以不变),一栋楼房能被看见当且仅当其最高点与远点的连线不会与其他之前连线相交,问你每 ...
- [bzoj2120] [洛谷P1903] 数颜色
Description 墨墨购买了一套N支彩色画笔(其中有些颜色可能相同),摆成一排,你需要回答墨墨的提问.墨墨会像你发布如下指令: 1. Q L R代表询问你从第L支画笔到第R支画笔中共有几种不同颜 ...
- ASP.NET MVC4 使用UEditor富文本
原帖:http://user.qzone.qq.com/369175376/infocenter?ptlang=2052 第一步:先到http://ueditor.baidu.com/webs ...
- 异想家Win7系统安装的软件与配置
C盘推荐一个硬盘,256G以上,安装好驱动,激活Win7,备份一次系统(纯净)! 1.Mac.Linux时间同步(双系统时配置): 开始->运行->CMD,打开命令行程序(以管理员方式打开 ...
- cmd 打开文件
打开cmd Python 文件地址