JS总结

声明变量加var关键字
声明函数加function关键字
实例化对象需要加new关键字
JS中对象的key不用加引号

函数的作用域:先在函数内部找,没有的话就去函数外面找
函数执行的过程中做了两步操作
第一步:词法分析,给AO赋值
第二步:真正执行阶段,就去AO上找

#####################
var name="abc"
var person={name:xiaqiang,abc:100}
console.log(person.name) 结果是 xiaoqiang
console.log(person[name]) 结果是 100
上述两种情况注意区分
#####################

JS中的对象,相当于python中的内置模块
Date对象
JSON对象 JSON.stringify:序列化 JSON.parse:反序列化


BOM就是与浏览器的一些交互
location.href 获取当前地址的url
location.href="https://www.baidu.com" 从当前地址跳转到百度
alert() 弹出框
setInterval clearInterval 多少毫秒之后做什么事儿

setTimeout clearTimeout 每隔多少毫秒做什么事儿

DOM
找标签:
document.getElementById(d1) 找id为d1的标签
document.getElementsByClassName("c1") 找class为c1的标签
document.getElementsByTagName("p") 找标签名为p的标签
找父标签:
var d1element=document.getElementById("d1")
d1element.parentElement
找所有子标签:
var d1element=document.getElementById("d1")
d1element.children
找第一个子标签:
var d1element=document.getElementById("d1")
d1element.firstElementChild
找最后一个子标签:
var d1element=document.getElementById("d1")
d1element.lastElementChild
找上一个兄弟标签:
var d1element=document.getElementById("d1")
d1element.previousElementSibling
找下一个兄弟标签:
var d1element=document.getElementById("d1")
d1element.nextElementSibling
创建标签:
追加一个子节点(作为最后的子节点)
var imgelement=document.createElement("img") //创建一个img标签
var d1element=document.getElementById("d1") //找到id为d1的标签
d1element.appendChild(imgelement) //在d1标签的最后面把img标签加上去
imgelement.src="https://img.zcool.cn/communi.jpg" //为img标签设置src属性
把增加的节点放到某个节点的前面
var imgelement=document.createElement("img") //创建一个img标签
var d0element=document.getElementById("d1") //找到id为d0的标签
d1element.insertBefore(imgelement,d1element) //在id为d0标签下的id为d1的标签前面加上img标签
imgelement.src="https://img.zcool.cn/communi.jpg" //为img标签设置src属性
取标签内部的文字:
pelement.innerText
在标签内部加入文字:
pelement.innerText="我是新p哈哈哈哈哈"
取标签:
d0element.innerHTML
在标签内部加入新的标签:
d0element.innerHTML="<p>最后一个P了</p>"

删除标签:
var d0element=document.getElementById("d0") //找id为d0的标签
var d1element=document.getElementById("d1") //找id为d1的标签
d0element.removeChild(d1element) //在id0标签中把id1标签删除
替换标签:
d0element.replaceChild(aelement,pelement) 在d0element标签下用aelement去替换pelement

获取输入框中的值
先找到标签,然后.value

JS操作class
删除属性
divelement[0].classList //列出divelement标签所有的class属性
divelement[0].classList.remove("c2") //移除c2这个属性
添加属性
divelement[0].classList //列出divelement标签所有的class属性
divelement[0].classList.add("c2") //添加c2这个属性
查看是否包含某个属性
divelement[0].classList.contains("c2") //查看是否包含c2这个属性,返回true和flase
存在就删除,否则就添加
divelement[0].classList.toggle("c2")

JS操作CSS
一般是标签对象.css.xxx
如果带横杠,如background-color,就应该写成.css.backgroundColor
其他的就直接.css.xxx

事件:
常用事件:
onclick 单击事件
ondbclick 双击事件事件
onfocus 获取焦点事件
onblur 失去焦点事件
onchange 域的内容发生改变事件
绑定事件的两种方法:
在标签里直接写属性(onclick=foo())
在JS中给标签绑定事件
this代表的是触发事件的当前标签

涉及到DOM操作的JS代码要放在body标签内部的最下面,因为HTML文件是由上向下解析的





posted @ 2018-12-04 21:28  Qimisun  阅读(96)  评论(0编辑  收藏  举报