property:只是一个js对象的属性的修改css
var obj = {x:100, y:200}
console.log(obj.x) //100
var p = document.getElementsByTagName('p')[0]
console.log(p.nodeName) // P 这是字符串
//nodeName就是js对象p的一个property,js对象的标准属性
复制代码
Attribute: 是对html标签的属性的修改html
//attribute 更改的是文档代码中的属性,如style,class,src等
var pList = document.querySelectorAll('p')
var p = pList[0]
p.getAttribute('data-name')
p.setAttribute('data-name', 'imooc')
复制代码
其实dom操做获取的就是js的对象,是个对象格式前端
//screen
console.log(screen.width)
console.log(screen.height)
//history
history.back() //返回
history.forward() //前进
复制代码
` <div id="div1"> <a href="#">a1</a> <a href="#">a2</a> <a href="#">a3</a> <a href="#">a4</a> </div> `
var div1 = document.getElementById('div1')
//根据事件冒泡机制
div1.addEventListener('click', function (e) {
var target = e.target
if (target.nodeName === 'A') {
alert(target.innerHITML)
}
})
复制代码
function bindEvent(elem, type, selector, fn) {
if (fn == null) {
fn = selector
selector = null
}
elem.addEventListener(type, function (e) {
var target
if (selector){
//代理
target = e.target
//matches判断dom节点是否和选择器匹配的
if (target.matches(selector)){
fn.call(traget, e)
}
}else{
//不是代理
fn(e)
}
})
}
var div1 = document.getElementById('div1')
bindEvent(div1, 'click', 'a', function(e){
e.preventDefault()
console.log(this.innerHTML)
})
复制代码
var xhr = new XMLHttpRequest()
xhr.open('GET', '/api', false) //false表示是异步请求
xhr.onreadystatechange = function () {
if (xhr.readystate == 4) {
if (xhr.status == 200) {
alert(xhr.responseText)
}
}
}
xhr.send(null)
复制代码
状态码说明readyStatenode
0-未初始化,尚未调动send方法webpack
1-载入,已经调用send方法,正在发送请求ios
2-载入完成,send方法执行完成,已经接收到所有响应内容web
3-交互,正在解析响应内容ajax
4-完成,响应内容解析完成,能够在客户端调用了npm
状态码status说明json
2xx-表示成功处理请求。如200
3xx-表示须要重定向,浏览器直接跳转
4xx-客户端请求错误,如404
5xx-服务端错误
HTML5专门为存储和设计,最大容量5M
API加单易用
localStorage.setItem(key, value), localStorage.getItem(key)
俩区别:
一、localStorage只要不清,会一直存在
二、sessionStorage,是浏览器关了,就会清除
ios safari 隐藏模式下,localStorage.getItem 会报错,统一建议使用try-catch包一下
var path = require('path')
var webpack = require('webpack')
module.exports = {
context:path.resolve(__dirname, './src'),
//入口文件
entry: {
app: './app.js'
},
//打包输出文件
output: {
path: path.resoleve(__dirname, './dist'),
filename: 'bundle.js'
},
//文件压缩
plugins: [
new webpack.optimize.UglifyJsPlugin()
]
}
复制代码