1、圖片按比例壓縮
function setImgSize(){ var outbox_w=imgbox.width(), outbox_h=imgbox.height(); imgbox.find('img').each(function(index, el) { var obj=$(this), objH=obj.height(), objW=obj.width(); if((objH/objW)>(outbox_h/outbox_w)){ obj.css({ height: outbox_h+"px", width: ((objW/objH)*outbox_h)+"px", marginLeft:((outbox_w-((objW/objH)*outbox_h))/2)+"px" }); }else{ obj.css({ width: outbox_w+"px", height: ((objH/objW)*outbox_w)+"px", marginTop:((outbox_h-((objH/objW)*outbox_w))/2)+"px" }); } });
}
2、解析URL上的字符串參數:
function getQueryString(parm){
var reg = new RegExp("(^|&)" + parm + "=([^&]*)(&|$)", "i"); var r = window.location.search.substr(1).match(reg); if (r != null) return unescape(r[2]); return null; }
需要注意的:unescape()函數(找到形式為 %xx 和 %uxxxx 的字符序列(x 表示十六進制的數字),用 Unicode 字符 \u00xx 和 \uxxxx 替換這樣的字符序列進行解碼,與之對應的是escape()編碼),ECMAScript v3 已從標准中刪除了 unescape() 函數,並反對使用它,因此應該用 decodeURI() 和 decodeURIComponent() 取而代之。
注意:即便value 中有& 連接符,也沒有關系,都可以通過encodeURIComponent進行轉碼成%26的形式,和瀏覽器自動拼接的並不沖突,記得decodeURIComponent()解碼就好。
3、常用的js校驗
3.1 手機號校驗
/^(0|86|17951)?(13[0-9]|15[012356789]|17[678]|18[0-9]|14[57])[0-9]{8}$/
3.2 漢字校驗
/^[a-zA-Z\u4e00-\u9fa5]+$/