★jQuery1.7.2下操作object元素報錯
jQuery1.7.2下,用$選擇器操作object元素會報錯:程式碼如下:
$('object').hide();
換用原生js就沒事了:
document.getElementsByTagName('object')[0].style.display = 'none';
★關閉按鈕小叉的字型
做一個簡單的關閉按鈕時,我們經常用字母X來實現,為了讓它看上去更像一個叉,可設定字型為:
font-family: “Microsoft JhengHei”,”microsoft yahei”,Monaco,Menlo,Consolas,”Courier New”,monospace;
★this 的值是在函式執行時確定的
<button id="btn1">button1</button> <button id="btn2">button2</button> var obj = { init : function(){ $('#btn1').click(this.alert); }, init2 : function(){ var _this = this; $('#btn2').click(function(){ _this.alert(); }); }, alert : function(){ alert(this); } } obj.init(); obj.init2();
★使用正則實現數字千分位分割
不帶小數點的:
"15000000".split("").reverse().join("").replace(/(\d{3})/g, "$1,").split("").reverse().join("");
帶小數點的:
'123123211312.333123'.replace(/(?=(?!^)(?:\d{3})+(?:\.|$))(\d{3}(\.\d+$)?)/g,',$1');
★背景半透明,內容不透明的寫法
<div><p>不透明</p></div> div{background:rgba(0,0,0,0.2) none repeat scroll !important; /*實現FF背景透明,文字不透明*/ background:#000; filter:Alpha(opacity=20);/*實現IE背景透明*/ width:500px; height:500px; color:#F30; font-size:32px; font-weight:bold;} div p{ position:relative;}/*實現IE文字不透明*/
火狐我們直接用rgba顏色就可以解決子標籤跟著半透明的問題了,但是ie還不是能很好的支援。
所以我們給不想被透明的標籤設定一個定位屬性,問題接能解決了。
★為div元素觸發keydown事件
div元素無法觸發keydown的原因是圖無法被focus,處理的方式是給div加上屬性tabindex就可以了。tabindex的取值為整數,表示按tab鍵的時候元素獲得焦點的順序。當取值為-1時,按tab無法獲得焦點,但可以用js程式碼來focus和blur,同時,還是可以觸發keydown事件的。
所以要讓div能觸發keydown事件,只需如下程式碼:
<div tabindex="-1">hello world !</div>
加此屬性後div會有高亮外框出現,加outline:none;可解決。
★查詢url中的引數
function getParameterByName(name) { var match = RegExp('[?&]' + name + '=([^&]*)') .exec(window.location.search); return match && decodeURIComponent(match[1].replace(/\+/g, ' ')); }
★移動端,繫結了click事件的元素在點選時會出現亮框,下面的程式碼可以去掉:
-webkit-tap-highlight-color:rgba(0,0,0,0); -webkit-tap-highlight-color: transparent; /* For some Androids */