h5学习
新增三个选择器
document.getElementsByClassName("");
document.querySelecter(" li a") 像css选择器那样,但是匹配到第一个,是个元素对象
document.querySelecterAll(" li a") 像css选择器那样,匹配所有,是个数组对象
删除类名 添加类名 检测是否存在一个类名 切换一个类名(有则删除,无则添加)
node.classList.add("类名")
node.classList.remove("类名")
node.classList.contains("类名")
node.classList.toggle("类名")
跟jq有异曲同工之妙
$node.addClass="";
$node.removeClass="";
$node.hasClass="";
$node.toggleClass="";
jq的好处是处理了浏览器兼容,原生js+h5虽然也有了这些方法,但是只有高级的浏览器有这些方法,但是原生有方便的好处,不用下载jq
data-自定义属性
获取一个元素dom节点.dataset(是那个节点的只包含data-属性的对象)
获取这个节点的data-属性(自定义属性) 就 node.dataset.name=“”;
如果获取和设置属性值的时候,属性名中如若包含—这个符号都要改成大写字母然后删掉-,比如data-test-demo 在js中获取用 node.textDemo这样获取,获取style.backgroundColor是同样的道理。
函数有几种定义的三种方法
字面量定义:1.var fn=function(){dfasdfafaf}() 1.1 fn()
关键字定义:2.function fn(){4654} fn()
无名:(function (){4654})() 好处是没有名字就是执行而已,不用定义名字,减少失误
这三种方法都可以运行