1、flex布局兼容寫法:
display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */display: -moz-box; /* OLD - Firefox 19- (buggy but mostly works) */display: -ms-flexbox; /* TWEENER - IE 10 */display: -webkit-flex; /* NEW - Chrome */display: flex; /* NEW, Spec - Opera 12.1, Firefox 20+ */justify-content: center;-webkit-justify-content:center;-webkit-box-align: center;align-items: center;-moz-align-items: center;-ms-align-items: center;-webkit-align-items: center;2、fixed布局在ios下不兼容問題:解決辦法:使用absolute布局;思路,將頁面主體部分(可能會滾動)放入一個div里,讓這個div內部進行滾動,需要固定的內容放到另一個div里,兩個div設置absolute布局;
3、給數據元素排序(按特定的屬性值,倒序):
_reverse : function(data){ return function(a,b){ var v1 = a[data]; var v2 = b[data]; return v2 - v1; } }調用:
arrlist.sort(baseData._reverse("_distance"));// arrlist是一個對象數據,根據?_distance屬性值倒序4、div水平垂直居中:利用flex布局解決在父元素上設置以下樣式(注意兼容性寫法,第一條):
display: flex;flex-direction: column;//設置項目的排列方向為縱向(豎著的,根據上下文設置的)justify-content: center; // 水平居中align-items: center; // 垂直居中5、根據數組下標刪除數據元素(擴展Array):
Array.PRototype.remove=function(dx){ if(isNaN(dx)||dx>this.length){ return false; } for(var i=0, n=0; i < this.length; i++){ if(this[i]!=this[dx]){ this[n++]=this[i] } } this.length-=1}6、獲取瀏覽器地址欄參數:/** * 獲取瀏覽器地址欄參數 * @param name 要獲取的參數名稱 * @returns {null} */function getQueryString(name) { var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if(r!=null) { return unescape(r[2]); } return null;}7、checked屬性使用注意事項:如果設置按鈕被選中狀態,設置checked屬性設置值為checked即可,但是不選中狀態則不能設置checked屬性值為空或者false,只要設置了checked屬性,不管值是多少,按鈕都會被選中。
8、引入的js文件放到body元素內容的后面,這樣避免加載很多js腳本時,頁面內容還沒有渲染,給用戶不好的體驗
9、在函數內部定義的變量要加var ,不加var就變成全局變量了;
新聞熱點
疑難解答