第七十五天(2018-10-18)
var SHAKE_THRESHOLD = 3000;
var last_update = 0;
var x = y = z = last_x = last_y = last_z = 0;
function init() {
if (window.DeviceMotionEvent) {
window.addEventListener('devicemotion', deviceMotionHandler, false);
} else {
alert('not support mobile event');
}
}
function deviceMotionHandler(eventData) {
var acceleration = eventData.accelerationIncludingGravity;
var curTime = new Date().getTime();
if ((curTime - last_update) > 100) {
var diffTime = curTime - last_update;
last_update = curTime;
x = acceleration.x;
y = acceleration.y;
z = acceleration.z;
var speed = Math.abs(x + y + z - last_x - last_y - last_z) / diffTime * 10000;
if (speed > SHAKE_THRESHOLD) {
alert("搖動(dòng)了");
media.setAttribute("src", "http://211.148.5.228:8002/Pages/test/Kalimba.mp3");
media.load();
media.play();
}
last_x = x;
last_y = y;
last_z = z;
}
題目二:
把以前兼容IE6.7學(xué)習(xí)的東西搬出來(lái)了,還以為不見(jiàn)了。
兼容性問(wèn)題
1.IE6margin雙邊距問(wèn)題
2.IE67 li間隙問(wèn)題
3.圖片間隙問(wèn)題——vertical-align:top
4.ie6下高度小于19px處理成19px;font-size:0;或者overflow:hidden
5.ie8以下濾鏡問(wèn)題,filter:alpha(opacity=50)
6.IE6 position:fixed 不兼容,fixed定位ie6兼容,js處理,通過(guò)獲取滾動(dòng)高度,賦值給需要固定的元素,設(shè)置絕對(duì)定位,設(shè)置top
7.ie6下父級(jí)的overflow:hidden是保不住子級(jí)的相對(duì)定位的(relative)-解決,給父級(jí)加定位
8.ie6下,絕對(duì)定位的父級(jí),寬高是奇數(shù)的話,定位偏移會(huì)出現(xiàn)1px的偏差
9.ie6下,內(nèi)容會(huì)撐開設(shè)置好的寬度
10.ie6,7 3px問(wèn)題
11.<p><h3></h3></p>會(huì)把p元素分割成兩個(gè),原因,嵌套的規(guī)范性,p需要嵌套inline元素
12.在ie6下,1px dotted #000 不兼容。精度問(wèn)題,可以用背景平鋪
13.ie6下margin傳遞需要觸發(fā)haslayout,父級(jí)有邊框時(shí),子元素margin值消失,解決辦法,觸發(fā)父級(jí)haslayout
14.ie6下當(dāng)一行子元素占有的寬度之和與父級(jí)的寬度相差超過(guò)3px或者有不滿行狀態(tài)的時(shí)候,最后一行子元素的下margin就會(huì)失效
15.ie6下的文字溢出bug 條件1,子元素的寬度和父級(jí)的寬度相差小于3px的時(shí)候,2,兩個(gè)浮動(dòng)元素中間有注釋或內(nèi)聯(lián)元素——解決辦法:用div吧注釋或內(nèi)聯(lián)元素包裹起來(lái)
16.ie6下,當(dāng)浮動(dòng)元素和絕對(duì)定位元素是并列關(guān)系的時(shí)候,絕對(duì)定位會(huì)消失,解決辦法:給定位元素外面包裹div
17.ie6,7下,輸入類型的表單控件上下各有1px的間隙——解決辦法:給input加浮動(dòng)
18.ie6,7下,輸入類型的表單控件加border:none無(wú)效,還是會(huì)出現(xiàn)邊框——解決辦法:1,給border:0;2,重置input的背景
19.ie6,7下,輸入類型的表單控件輸入文字的時(shí)候,背景圖片會(huì)跟隨移動(dòng)——解決辦法:把背景加給父級(jí)
20.處理ie6 png圖片兼容問(wèn)題js插件,DD_belatedPNG.js,也可以用CSS濾鏡處理
a.css處理
b.微軟behavior擴(kuò)展,下載iepngfix.htc
c.js插件
21.css hack \9——IE10之前的瀏覽器解析,+,*——IE7包括IE7之前的瀏覽器解析, _ ——IE6包括IE6之前的IE瀏覽器
22.important兼容問(wèn)題,在IE6下,在important后面加一條同樣的樣式,會(huì)破壞important優(yōu)先級(jí)作用,按照默認(rèn)的優(yōu)先級(jí)順序來(lái)走
23.IE6 margin負(fù)值不兼容,處理,只要position:relative;這個(gè)解決方案在圣杯布局中有出現(xiàn)。圣杯布局,可以用position:absolute;來(lái)定位
題目三:
const MAX_WIDTH = 7
let table = ''
for (let rhs = 1; rhs <= 9; rhs++) {
for (let lhs = 1; lhs <= 9; lhs++) {
if (lhs <= rhs) table += `${lhs}*${rhs}=${lhs * rhs}`.padEnd(MAX_WIDTH)
}
table += '\n'
}
console.log(table)
題目四:
利用雜碎時(shí)間