Time of Update: 2017-01-19
在網站前端開發中,瀏覽器安全色性問題本已讓我們手忙腳亂,Chrome的出世不知道又要給我們添多少亂子。瀏覽器安全色性是前端開發架構要解決的第一個問題,要解決相容性問題就得首先準確判斷出瀏覽器的類型及其版本。
Time of Update: 2017-01-19
什麼是cookie? cookie 是儲存於訪問者的電腦中的變數。每當同一台電腦通過瀏覽器請求某個頁面時,就會發送這個 cookie。你可以使用 JavaScript 來建立和取回 cookie 的值。 有關cookie的例子: 名字 cookie 當訪問者首次訪問頁面時,他或她也許會填寫他/她們的名字。名字會儲存於 cookie 中。當訪問者再次訪問網站時,他們會收到類似 "Welcome John Doe!" 的歡迎詞。而名字則是從 cookie 中取回的。 密碼 cookie
Time of Update: 2017-01-19
有時需要限制文字框輸入內容的類型,本節分享下Regex限制文字框只能輸入數字、小數點、英文字母、漢字等代碼。例如,輸入大於0的正整數複製代碼 代碼如下:<input onkeyup="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}" onafterpaste="if(this.value.length==1){
Time of Update: 2017-01-19
在web開發在擷取圖片寬高是很正常的事情,圖片在載入完成前是擷取不到圖片的寬高的,在載入完成後才可以擷取圖片本身的寬高,例如:複製代碼 代碼如下:var img = new Image();img.src = "loading.gif";img.onload = function(){ alert ( img.width
Time of Update: 2017-01-19
上周接到個需求,需求是這樣的:使用者掃一掃二維碼會產生一個連結,該連結會向後端發送個請求,返回一個 apk 的下載地址,使用者點擊下載按鈕可以下載此 apk。然後就發生了問題,經過測試,發現用微信掃一掃開啟的頁面點擊下載按鈕下載不了 apk,後百度之,原來是微信內建瀏覽器屏蔽了下載連結,後面和需求方溝通,需求改為如果使用者是用微信內建瀏覽器開啟的,則提示使用者換一個瀏覽器開啟頁面,否則下載不了 apk。那麼該如何判斷使用者是否是用微信瀏覽器呢? 我們知道 js 可以通過
Time of Update: 2017-01-19
擷取網站icon,常用最簡單的方法就是通過website/favicon.ico來擷取,不過由於很多網站都是在頁面裡面設定favicon,所以此方法很多情況都不可用。 更好的辦法是通過google提供的服務來實現:http://www.google.com/s2/favicons?domain=http://www.baidu.com 代碼: 複製代碼 代碼如下: <!doctype html> <html> <head> <meta charset="
Time of Update: 2017-01-19
簡介及資料 通過Node.js的官方API可以看到Node.js本身提供了很多核心模組 http://nodejs.org/api/ ,這些核心模組被編譯成二進位檔案,可以require('模組名')去擷取;核心模組具有最高的載入優先順序(有模組與核心模組同名時會體現) (本次主要說自訂模組) Node.js還有一類別模組為檔案模組,可以是JavaScript代碼檔案(.js作為檔案尾碼)
Time of Update: 2017-01-19
百度目前為站長提供了判斷手機終端類型並自動實現跳轉的js指令碼,極大的方便了廣大站長及web開發人員。其js指令碼的使用方法極其簡單。複製代碼 代碼如下:<script src="http://siteapp.baidu.com/static/webappservice/uaredirect.js" type="text/javascript"></script><SCRIPT
Time of Update: 2017-01-19
父表單擷取iframe window.iframeId iframe擷取父視窗 window.parent parent.html 複製代碼 代碼如下: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type"
Time of Update: 2017-01-19
複製代碼 代碼如下: <span style="font-family: Arial, Helvetica, sans-serif;"><input type="password" name="password" id="password" onkeydown="return banInputSapce(event);" onKeyup="return inputSapceTrim(event,this);" /></span> 複製代碼 代碼如下: /**
Time of Update: 2017-01-19
document.getElementById("louyuming").options[0].selected=true;function jsSelectIsExitItem(objSelect, objItemValue) { var isExit = false; for (var i = 0; i < objSelect.options.length; i++) { if (objSelect.options[i].value == objItemValue) { isExit
Time of Update: 2017-01-19
其它的如通過NPM安裝的第三方模組(third-party modules)或本地模組(local modules),每個模組都會暴露一個公開的API。以便開發人員可以匯入。如複製代碼 代碼如下:var mod = require('module_name')此句執行後,Node內部會載入內建模組或通過NPM安裝的模組。require函數會返回一個對象,該對象公開的API可能是函數,對象,或者屬性如函數,數組,甚至任意類型的JS對象。這裡列下node模組的載入及緩衝機制1)載入內建模組(A
Time of Update: 2017-01-19
有時候有很多逗號,這樣我們就不好處理了,下面的函數就是將多個逗號替換為一個逗號,方便後面的處理。複製代碼 代碼如下:<script language="javascript"> var str="asdfk,asdf34,,,,,,5345,,,,"; str=str.replace(new RegExp(',+',"gm"),',');alert(str); </script>比較不錯的一個代碼:複製代碼 代碼如下:function
Time of Update: 2017-01-19
用js替換除數字與逗號以外的所有字元複製代碼 代碼如下:<script language="javascript"> var str="asdfk,asdf345345,345345"; //替換除數字與逗號以外的所有字元。str=str.replace(/[^0-9,]*/g,""); //去掉第一個逗號if (str.substr(0,1)==',') str=str.substr(1);//去掉第二個逗號var reg=/,$/gi;
Time of Update: 2017-01-19
今天的項目中遇到需要用javascript的escape編碼漢字再用unescape解碼的情況,測試程式碼片段的時候出現了亂碼的情況。具體情況如下:首先,用EditPlus開啟測試頁面test.html,編輯如下html代碼:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html
Time of Update: 2017-01-19
一、基本文法: window.open(pageURL,name,parameters) 其中: pageURL 為子視窗路徑 name 為子視窗名字 parameters 為視窗參數(各參數用逗號分隔) 二、樣本 複製代碼 代碼如下: <script type="text/javascript"> window.open('page.html','newwindow','height=500,width=800,top=0,left=0,
Time of Update: 2017-01-19
這代碼實現的功能就是平常我們遇到的一個div裡麵包含img的時候,在img圖片大小未知,div大小未知的情況下,讓圖片自適應大小,對於圖片本身小於div容器大小時,不作處理。因為如果展開,圖片可能就失真了。 廢話不多說,直接上代碼,已測試,相容Firefox,Google,IE6,IE7/8 以下是js代碼: 複製代碼 代碼如下: <script type="text/javascript" language="javascript"> window.onload=function(
Time of Update: 2017-01-19
因為ie10-ie11的版本問題,不再支援document.all判斷,所以ie判斷函數要重新寫了function isIE() { //ie? if (!!window.ActiveXObject || "ActiveXObject" in window) return true; else return false; }第一種,只區分瀏覽器,不考慮版本 複製代碼 代碼如下:function
Time of Update: 2017-01-19
如果要非同步執行一個函數,我們最先想到的方法肯定會是setTimeout例如:setTimeout(function( /* 1s後做點什麼 */){},1000}那如果說要最快速地非同步執行一個函數呢?是否會是:setTimeout(function( /* 儘快做點什麼 */){},0}可惜的是,瀏覽器為了避免setTimeout嵌套可能出現卡死ui線程的情況,為setTimeout設定了最小的執行時間間隔,不同瀏覽器的最小執行時間間隔都不一樣。chrome下測試 setTimeout 0
Time of Update: 2017-01-19
學習資料 1.深入淺出Node.js 2.Node.js開發指南簡介(只撿了我覺得重要的) Node.js是讓Javascript瀏覽器外用運行在伺服器的一個平台,不是語言; Node.js採用的Javascript引擎是來自Google Chrome的V8;運行在瀏覽器外不用考慮頭疼的Javascript相容性問題