1、函数都有返回值,人为return,返回什么就是什么,否则,他的返回值就是undefined

而方法的本质也是函数,所以也有返回值

document.getElementById()返回的是获取的标签

document.getElementsClassName()返回的是一个数组集合

document.getElementsTagName()返回的是一个数组集合

选中一个元素修改他的内容 (上边三个)

document.getElementsByClassName("name")[0].innerHTML="hahahh";这句话的意思

是选中一个所有用class起一个名字的元素数组,并选中数组中的第一个叫做这个名字的标签,给它

修改内容为hahahh。

2、改变标签的属性    元素.属性名

var pic=document.getElementsByTagName("img");

pic[0].src="路径src.jpg''

3、修改和添加css样式    元素.style.width(css属性名)="属性值";

var pic=documentByTagName("img");

pic[0].style.width="500px";

4、事件:用户在事件中所触发的行为

(1)点击 onclik

(2)鼠标进入 onmouseenter  鼠标离开onmouseleave

(3)鼠标移动 onmousemove  

(4)鼠标悬浮 onmouseover   鼠标移除 onmouseout

(5)鼠标按下 onmousedown   鼠标抬起 onmouseup

(6)表单聚焦 onfocus  表单失去焦点 onblur

表单内容修改  onchange

(7)浏览器加载完成 onload

这些事件使用时必须跟一个函数配合使用

1)事件 将事件当做标签属性使用 <img src="xx.jpg"  onclik="alert(123)"/>

2)通过事件绑定,将事件当成一个元素的属性

特例:对于class,html中的class在js中是关键字,获取class这个属性时必须使用clssName来获取或修改

pic[0].onlick=function(){

  pic[0].className="pic"

}

5、JS中的for循环没有关系都是互相独立的

*解决10.24案例中的i和for匹配的问题

方法一:给事件套用一个自调用函数

for( var  i=0;i<arr.length;i++){

  (function(i){

        lis[i].onlick=function(){

            tupian.src=arr[i]

          }

  })

}

方法二:人为定义属性,将索引存在属性里,需要的时候调用属性(this)

for( var  i=0,i<arr.length,i++){

  人为定义一个属性,来存储for循环的i

  lis[i].index=i;

  lis[i].onlick=function(){

    tupian.src=[this.index]

  }

}

*this 

this是js的一个关键字,它是一个对象,一般用在函数里用于指向函数内部的关系

div.onlick=function(){this}

如果函数在定义的时候前面有,那么this就指向点前面的对象,如果函数定义的时候没有对象,那么this就是window

10.24JS日记的更多相关文章

  1. 10.22JS日记

    1.js数据类型分析 (1)基础类型:string.number.boolean.null.undefined (2)引用类型:object-->json.array... 2.点运算  xxx ...

  2. 10.17JS日记

    1.变量提升 变量提升是浏览器的一个功能,在运行js代码之前,浏览器会给js一个全局作用域,叫window, window分为两个模块,一个叫做内存模块,一个叫做运行模块,内存模块找到当前作用域下的 ...

  3. 9.10 h5日记

    9.10 1.什么是属性 属性是表示某些事物的一些特征 2.属性分为标签属性和样式属性,二者的区别在于哪里 标签属性:<img src="01.jpg" width=&quo ...

  4. 10.31JS日记

    this问题 (1)this是js的一个关键字,指定一个对象,然后替代this: 函数中的this指向行为发生的主体,函数外的this都指向window,没有意义 (2)函数内的this跟函数在什么环 ...

  5. 10.23JS日记

    1.逻辑运算 ||  &&  ! ||:遇到第一个为true的值就中止并返回 &&:遇到第一个为false的值就中止并返回,如果没有false值,就返回最后一个不是fa ...

  6. 10.19JS日记

    1.函数   关键词(function) var是js的关键字,用于声明变量,声明在内存模块完成,定义(=)是在执行模块完成 var可以在内存模块提前完成(js代码执行前),所以有变量提升这个功能 c ...

  7. 10.18JS日记

    1.JS的本质就是处理数据,数据来自后台的数据库,所以变量起到了临时存储的作用, ES制定了js的数据类型 2.数据类型有哪些? (1)字符串 String (2)数字  Number (3)布尔 B ...

  8. 10.16JS日记

    1.parseint() 2.parsefloat() 这两个单词运行的时候遇到第一个非数字就结束了 3.var a="hello word"  a这个变量为字符串,每一个字母为字 ...

  9. 10.9h5日记

    一.单位 1.px是基本的单位,像素 2.em也是一个单位,使用方式,用元素父级的字体大小乘以em前的数字,父级没有就向上一个父级找, 直到body为止,如果body没有,就用默认的字体大小16px ...

随机推荐

  1. openwrt手工配置pptpd

    官方wiki:http://wiki.openwrt.org/doc/howto/vpn.server.pptpd#prerequisites 20190220更新:PPTP VPN协议已经被 IOS ...

  2. angularjs中安卓原生APP调用H5页面js函数,js写法应注意

    安卓原生app调用js方法,js方法应写在html下的script标签内,不能有任何function包裹,例如angular的controller层,这样APP也是获取不到的: 所以只有放在html中 ...

  3. js中将类数组转换为数组的几种方法

    1.slice方法 最经典的方法,使用Array的slice方法,此方法如果不传参数的话会返回原数组的一个拷贝,因此可以用此方法转换类数组到数组: // 创建一个类数组对象 var alo = {0: ...

  4. Java多线程及线程状态转换

    以下内容整理自:http://blog.csdn.net/wtyvhreal/article/details/44176369 线程:是指进程中的一个执行流程.  线程与进程的区别:每个进程都需要操作 ...

  5. Cacti ERROR: opening '*.rrd': No such file or directory 解决方法

    error: opening /home/cacti/rra/url-2 no such file or directory 在看Cacti Graph Debug Mode发现如下报错 RRDToo ...

  6. 七、Builder 建造器模式

    需求:需要组装复杂结构的实例 代码清单: Builder 接口: public abstract class Builder { public abstract void makeTitle(Stri ...

  7. 一、Iterator 迭代器

    需求:如何不适用for循环,依次遍历出数组中每个元素? 设计原理: 代码清单: 接口类 public interface Iterator { boolean hasNext(); Object ne ...

  8. commit 流程

    COMMIT是一个非常快的操作,当我们发布commit命令时,真正困难的动作已经完成,在数据库中已经执行了数据更改,所以已经完成了99%的任务,例如:下列操作已经产生: 1.在SGA(Buffer C ...

  9. zabbix监测公网IP的客户端主机

    未经测试 如果server端是内网的主机,需要注意:防火墙.端口映射 再用zabbix服务器去Telnet客户机的10050端口,然后在客户机中查看10050被什么ip访问了,拿到这个ip之后,加到之 ...

  10. rancher2 HA部署注意事项

    参考: https://rancher.com/docs/rancher/v2.x/en/installation/ha-server-install/ https://www.cnblogs.com ...