優勢:兼容性好javascript
缺點:脫離文檔流(清除浮動)css
<style>
.left {
float: left;
background: pink;
width: 100px;
}.right {
float: right;
width: 100px;
background: darkkhaki;
}
<style>複製代碼
優勢:快捷html
缺點:可實用性差,脫離文檔流java
.box>div {
position: absolute;
}
.left {
left: 0;
background: pink;
width: 100px;
}
.right {
right: 0;
width: 100px;
background: darkkhaki;
}.middle {
left: 100px;
right: 100px;
background: peachpuff;
}
複製代碼
有的點:比較完美web
缺點:IE8不支持flexajax
優勢:兼容性好後端
缺點:一個單元格高度變化,都會變化跨域
.box>div {
display: table-cell;
}
.box {
display: table;
width: 100%;
}
.left {
background: pink;
width: 100px;
}
.right {
width: 100px;
background: darkkhaki;
}
複製代碼
缺點:兼容性差瀏覽器
.box {
display: grid;
width: 100%;
grid-template-columns: 100px auto 100px;
}
複製代碼
建立BFC的方式緩存
事件流:捕獲->目標階段->冒泡
<html>
<head>
<script type="text/javascript">
function getEventTrigger(event)
{
x=event.currentTarget;
alert("The id of the triggered element: "
+ x.id);
}
</script>
</head>
<body >
<div id="p1" onmousedown="getEventTrigger(event)">
<button>點擊我</button>
<button>點擊我</button>
<button>點擊我</button>
</div>
</body>
</html>複製代碼
<html>
<head>
<script type="text/javascript">
function getEventTrigger(event)
{
x=event.target;
alert("點擊id是"
+ x.id);
}
</script>
</head>
<body >
<div id="p1" onmousedown="getEventTrigger(event)">
<p id='1'> 點擊id=1</p>
<p id='2'> 點擊id=2</p>
</div>
</body>
</html>複製代碼
http 協議主要特色:簡單、快速、靈活、無狀態、無鏈接
1. 請求報文
2. 響應報文
http支持持久鏈接:避免了創建或者從新創建鏈接
管線化:將多個HTTP請求整批發送,在發送過程當中不用等待對方響應未管線化:請求1->響應1->請求2->響應2->請求3->響應3
管線化:請求1->請求2->請求3->響應2->響應1->響應3
- 管線化機制經過持久鏈接完成,只有get和head請求能夠進行管線化,post則有限制
- 管線化不會影響響應到來順序響應返回順序不改變
function People(name){
this.name:name}
class PeopleES6(name){
constoructors{
this.name=name
}
}
//實例化
new People('周梅')
new PeopleES6('周梅')複製代碼
function Parent(){
this.name='周梅'
this.like=['唱歌','讀書']
}
function Chlid(){
this.type='chlid'
Parent.call(this)//修改上下文,避免操做子類屬性影響父級屬性
}
Child.prototype=Object.create(Parent.prototype)//複製父級原型鏈,Object.create使子類原型鏈指向子類,不在指向父類
Child.prototype.constoructor=Child//修改構造方法複製代碼
協議、域名、端口 都相同的即爲同源
同源限制
先後端如何通訊:Ajax、webSocket、CORS跨域通訊方式
JSONP:設置回調名稱->註冊window事件->監聽onload->刪除window對象->添加<script>發起請求
Hash:hash更新,頁面不刷新原則添加 onhashchange事件
postMessage :window.postMessage('data','https://www.baidu.com/')
window.addEventListener('message',function(){},false)
websocket :配置請求頭Upgrade: websocket和Connection: Upgrade
CORS:ajax發送一個非同源請求時,會在請求頭添加origin字段