Time of Update: 2017-01-19
在處理網頁圖片時,特別是一些圖片列表的應用裡面,很難保證圖片統一大小,直接設定圖片大小又會導致圖片展開,造成圖片模糊,本文介紹的代碼可以在圖片載入完成後自動按比例調整圖片大小。 Javascript: 複製代碼 代碼如下: < script language="javascript" type="text/javascript"> < !-- // 說明:用 JavaScript 實現網頁圖片等比例縮放 // 整理:http://www.CodeBit.cn function
Time of Update: 2017-01-19
使用的微軟的Json序列化庫那麼date會是複製代碼 代碼如下:/Date(1224043200000)/ 有效做法是 mydate.replace(/\/Date\((.*?)\)\//gi, "new Date($1)"); 如果要轉換格式,最好寫個擴充方法:Date.prototype.pattern=function(fmt) {
Time of Update: 2017-01-19
注:翻譯之中有什麼不恰當的地方,歡迎大家指正,祝大家雙節快樂! 如果不是有特殊需要而去擴充原生對象和原型(prototype)的做法是不好的 複製代碼 代碼如下: //不要這樣做 Array.prototype.map = function() { // 一些代碼 }; 除非這樣做是值得的,例如,向一些舊的瀏覽器中添加一些ECMAScript5中的方法。 在這種情況下,我們一般這樣做: 複製代碼 代碼如下: if (!Array.prototype.map) {
Time of Update: 2017-01-19
replace函數接受兩個參數,第一個參數為字串或Regex,第一個參數同樣可以接受一個字串,還可能是一個函數。 首先對於第一個參數為字串的我們不再需要多說"I am a boy".replace("boy","girl"),輸出:"I am a girl"。在這裡想說的是第一個參數為正則的情形。對於Regex來說首先會根據是否全域的(全域//g)決定替換行為,如果是全部的則替換全部替換,非全域的只有替換首個匹配的字串。例如:複製代碼
Time of Update: 2017-01-19
複製代碼 代碼如下: function copyToExcel(tableid) { //控制按鈕 var btn = document.getElementById("copy"); btn.setAttribute("disabled", "true"); btn.setAttribute("value", "處理中..."); var curTbl = document.getElementById(tableid); try { var oXL = new ActiveXObject("
Time of Update: 2017-01-19
/** * 本文純粹是梳理一下目前W3C標準中Array對象的內建Method。 * 全文沒啥營養,不過最後效能測試的部分,倒是拋出了一些疑問。 */ 賦值方法 (Mutator methods) 這些方法直接修改數組自身 pop 和 push Array.pop(); // 刪除數組最後一個元素,返回被刪除的元素 Array.push(element1, ..., elementN); // 在數組尾部插入1-N個元素,返回操作後數組的length 通過這 pop 和 push
Time of Update: 2017-01-19
positon:fixed 讓HTML元素脫離文檔流固定在瀏覽器的某個位置 網頁中經常會有浮動的導航條會用到這種定位元模式,但是ie6下並不相容這種定位 浮動導航條的樣式,重要的是position:fixed;bottom:60px;(浮動導航底部距離視窗底部60px) 複製代碼 代碼如下: .floating_9677{position:fixed; z-index:961; bottom:60px;}
Time of Update: 2017-01-19
閑來無事,花了兩天時間,用javascript 寫了一個打豆豆的遊戲,至於怎麼玩的就不細說了,到網上搜一下就知道了,很簡單。 下面是源碼,發布出來供大家學習交流。 由於本程式沒有用到一個圖片,所以介面在ie下豆豆都是方形的比較紮眼,建議用chrome瀏覽器運行,或者firefox 示範地址:http://www.imkoko.com/app/dadoudou.php 不多說,上代碼 複製代碼 代碼如下: <!DOCTYPE html> <html>
Time of Update: 2017-01-19
效果如下: 複製代碼 代碼如下:<html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title></title> <style type="text/css"> .code
Time of Update: 2017-01-19
可縮放向量圖形(Scalable Vector Graphics,SVG)是基於可延伸標記語言 (XML)(XML),用於描述二維向量圖形的一種圖形格式。SVG由W3C制定,是一個開放標準。另SVG還是Static Var Generator靜止無功發生器的簡稱判斷瀏覽器是否支援SVG的代碼(部分截去自Highcharts源碼): Js代碼: 複製代碼 代碼如下: function hasSVG(){ SVG_NS = 'http://www.w3.org/2000/svg', return !
Time of Update: 2017-01-19
void是javascript中的一個操作符,文法如下: javascript:void(運算式) javascript:void 運算式 void會計算運算式的值,但是會丟棄運算式的傳回值。 這個運算式常常用來使連結變成一個死連結: 複製代碼 代碼如下: <a href = "javascript:void(0)" onclick = "func()">點我</a> 當點擊這個連結的時候,不會發生地址跳轉,而執行onclick函數。 下面的方式也能實現同樣的結果
Time of Update: 2017-01-19
很多時候需要用到限制文字框的數字輸入,試過許多方法,都不太理想,遂決定自己實現一個來玩玩。 曾經使用過的方法 通過onkeydown事件來控制只允許數字: 複製代碼 代碼如下: <input onkeydown="return event.keyCode>=48&&event.keyCode<=57||event.keyCode>=96&&event.keyCode<=105" /> 通過jQuery外掛程式Masked
Time of Update: 2017-01-19
Javascript查詢DBpedia小應用 上一篇文章中,我們瞭解了SPARQL、SPARQL Endpoint,並簡單做了一個SPARQLWrapper.js,來從DBpedia中查詢了一些資料。 本文則嘗試利用SPARQLWrapper.js來讀取DBpedia的資料,並顯示出來。 目標 通過輸入一個英文單詞,然後返回WIKI中相關的資訊。 那麼主要要解決的問題就是怎樣的SPARQL語句能夠查詢到我們需要的東西。 先看一段簡單的SPARQL查詢語句 複製代碼 代碼如下: PREFIX :
Time of Update: 2017-01-19
分享一個Javascript編寫函數的最佳化技巧。 適用的函數應該要滿足以下條件: 產生固定結果頁面中多次調用 複雜或較耗時 代碼和分析如下: Java代碼: 複製代碼 代碼如下: //產生固定結果並且在頁面中多次調用的函數 function check() { //類比耗時操作 var begin = Date.now(); //ECMAScript5添加的,若不支援請改成 +new Date(); var ONE_SECOND = 1000, result = false;
Time of Update: 2017-01-19
因此,他們始終存著最新,最準確的資訊。從本質上說,所有NodeList對象都是訪問DOM文檔時即時啟動並執行查詢。例如下列代碼會導致無限的迴圈:複製代碼 代碼如下:<script type="text/javascript"> window.onload=function(){ var divObj=document.getElementsByTagName('div'); &
Time of Update: 2017-01-19
數組的定義:方法1.複製代碼 代碼如下:var mycars=new Array()mycars[0]="Saab"mycars[1]="Volvo"mycars[2]="BMW"方法2.定義和初始化一起:var mycars=new Array("Saab","Volvo","BMW")或者另一種寫法:var mycars=["Saab","Volvo","BMW"];javascript二維數組:javascript用一維數組來類比二維數組:方法1.var arr = new Array([
Time of Update: 2017-01-19
在通過Javascript實現用戶端和服務端的互動時,有時候需要對作業系統進行判斷,以便實現不同作業系統下的相容性,比如:我們有一個網站, 在Windows XP下瀏覽效果良好,但是到了Ubuntu下,由於許多特性不同,會造成在瀏覽上的細微差異,甚至會影響到良好的使用者體驗。這個時候我們就需要利用 Javascript對作業系統的類型以及某些特性進行判斷,分而治之,從而實現網站在跨平台瀏覽時候保持良好的使用者體驗。 下邊的代碼實現對Windows、Mac、Linux、Unix擦作系統的判斷:
Time of Update: 2017-01-19
昨天參加的一個前端面試,其中有一題數組去重,首先想到的是對象存索引值的方法,代碼如下 方法一:(簡單存索引值) 複製代碼 代碼如下: Array.prototype.distinct1 = function() { var i=0,tmp={},that=this.slice(0) this.length=0; for(;i<that.length;i++){ if(!(that[i] in tmp)){ this[this.length]=that[i];
Time of Update: 2017-01-19
最近在修改百度地圖開源的東西,想把裡面耦合在一起的代碼給拆分出來。拆解之後,發現了一些坑爹的問題。邏輯上沒有問題的情況下,該出現的效果沒有出現。然後就以為是代碼哪裡寫得不對了,就一直找啊找的。在調試的時候發現,相應的事件被執行了兩遍。瞬間就明白了,肯定在哪個地方重複綁定了事件。果然,真心腦殘的綁定了兩次事件。 平時在寫代碼的時候,如果發現綁定的事件觸發了兩次,那就要查看是否是綁定了兩次事件了。別傻傻的先去查看代碼哪裡處處了,或者懷疑別人的api有問題。
Time of Update: 2017-01-19
今天在rainweb的部落格上,看到了這篇非常好的文章,覺得非常有必要分享出來,相信大家認真讀完這篇文章,對js範圍的理解又會上升到一個新的台階。 前言:javascript裡變數範圍是個經常讓人頭痛抓狂的問題,下面通過10++個題目,對經常遇到又容易出錯的情況進行了簡單總結,代碼範例很短很簡單 題目一 複製代碼 代碼如下: var name = 'casper'; alert(name); //毫無疑問地輸出:casper 題目二 複製代碼 代碼如下: alert(name);