網站地圖 | RSS訂閱 老鐵博客 - 上海SEO優化|上海網站建設|蜘蛛池出租|站群代搭建
你的位置:首頁 ? Javascript
前端腳本

JS實現各種進制間的互相轉換

JS實現各種進制間的互相轉換
<script language="javascript" type="text/javascript">
function jinzhi_chg(){
	var num=document.getElementById("in").value;
	var type=document.getElementById("type");
	var tynum,to;
	for(var i=0;i<type.length;i++){ 
		if(type[i].selected)
		tynum=parseInt(type[i].value);
	}
	switch(tynum){
		case(1):to=parseInt(num).toString(2);break;
		case(2):to=parseInt(num).toString(8);break;
		case(3):to=parseInt(num).toString(16);break;
		case(4):to=parseInt(num,2);break;
		case(5):to=parseInt(num,8);break;
		case(6):to=parseInt(num,16);break;
		case(7):to=parseInt(num,2).toString(8);break; 
		case(8):to=parseInt(num,8).toString(2);break; 
		case(9):to=parseInt(num,2).toString(16);break; 
		case(10):to=parseInt(num,16).toString(2);break; 
		case(11):to=parseInt(num,8).toString(16);break; 
		case(12):to=parseInt(num,16).toString(8);break; 
	}
	document.getElementById("out").value=to;
}
</script>
<select name="type" id="type">
    <option value="1">十進制轉二進制</option>
    <option value="2">十進制轉八進制</option>
    <option value="3">十進制轉十六進制</option>
    <option value="4">二進制轉十進制</option>
    <option value="5">八進制轉十進制</option>
    <option value="6">十六進制轉十進制</option>
    <option value="7">二進制轉八進制</option>
    <option value="8">八進制轉二進制</option>
    <option value="9">二進制轉十六進制</option>
    <option value="10">十六進制轉二進制</option>
    <option value="11">八進制轉十六進制</option>
    <option value="12">十六進制轉八進制</option>
</select>
輸入值:<input type="text" id="in" />
輸出值:<input type="text" id="out" disabled="disabled" />
<input type="button" value="開始轉換" onclick="jinzhi_chg()" />


發布時間:2016年11月24日 | 評論:3 | 瀏覽: | 標簽:Javascript  JS教程  

前端腳本

JS獲取指定A標簽的鏈接地址url的頂級域名和當前域名

JS獲取指定A標簽的鏈接地址url的頂級域名和當前域名

獲取指定的A標簽href屬性的值,提取URL中的頂級域名或當前域名。具體代碼如下:

<a id="a1" href="http://www.wgsygc.com/tags-189.html" target="_blank">JS特效</a>
<script language="javascript" type="text/javascript">
alert(getdomain(1,'a1')); //彈窗輸出域名,此處為獲取頂級域名
function getdomain(typ,id){ //參數:類型(0:當前域名,1:頂級域名),鏈接對象ID
	var url=window.document.getElementById(id).href; //獲取鏈接
	if(typ==0){ //獲取當前域名,如:www.wgsygc.com
		var a = document.createElement('a');
		a.href = url;
		url=a.hostname;
	}else{ //獲取頂級域名,如:lingchenliang.com
		//使用正則表達式
		url=url.replace(/.+[\.\/]([A-z]+\.[A-z]+)\/[^\/].+/,"$1");
	}
	return url; //返回域名值
}
</script>


發布時間:2016年9月20日 | 評論:0 | 瀏覽: | 標簽:Javascript  JS特效  

前端腳本

JS獲取三種CSS樣式的方法

JS獲取三種CSS樣式的方法

一、獲取元素的行內樣式

var obj = document.getElementById("test");
alert(obj.height + "\n" + obj.width);     // 200px 200px typeof=string只是將style屬性中的值顯示出來

二、獲取計算后的樣式

發布時間:2016年9月20日 | 評論:0 | 瀏覽: | 標簽:Javascript  JS特效  

前端腳本

JS格式化手機號碼和400電話數字格式

JS格式化手機號碼和400電話數字格式

可以格式化為任意位數分隔的格式規范,間隔符只能為-英文減號或 英文空格。

<script language="javascript">
//函數功能:格式化手機號碼和400電話格式
//參數:要格式化的字符對象ID,存放新值的對象ID,字符串格式規則(如3-4-4、3 3 4)
//制作:凌陳亮(QQ:57404811)
function formatmobile(id,id2,str){
	var num=trim(window.document.getElementById(id).value); //獲取號碼并去左右空格
	var renum=""; //函數返回對象
	var arr=new Array();
	var i,m=0,n;
	if(str.indexOf('-')>-1){
		arr=str.split("-");
		for(i=0; i<arr.length; i++){
			n=m+Number(arr[i]);
			renum+=num.substring(m,n);
			if(i<arr.length-1) renum+="-";
			m=n;
		}
	}else{
		arr=str.split(" ");
		for(i=0; i<arr.length; i++){
			n=m+Number(arr[i]);
			renum+=num.substring(m,n);
			if(i<arr.length-1) renum+=" ";
			m=n;
		}
	}
	window.document.getElementById(id2).innerHTML=renum;
}
function trim(str){ //刪除左右兩端的空格
	return str.replace(/(^\s*)|(\s*$)/g, ""); //過濾首尾空格為空
}
</script>
手機號:<input type="text" name="mobile" id="mobile" value="13023105435" />
格式化后:<span id="fmm"></span>
<p>
<input type="button" value="3-4-4格式" onClick="javascript:formatmobile('mobile','fmm','3-4-4');" />
<input type="button" value="3 4 4格式" onClick="javascript:formatmobile('mobile','fmm','3 4 4');" />
</p>
400電話:<input type="text" name="400tel" id="400tel" value="4008888888" />
格式化后:<span id="fmm2"></span>
<p>
<input type="button" value="3-3-4格式" onClick="javascript:formatmobile('400tel','fmm2','3-3-4');" />
<input type="button" value="3 3 4格式" onClick="javascript:formatmobile('400tel','fmm2','3 3 4');" />
<input type="button" value="3-4-3格式" onClick="javascript:formatmobile('400tel','fmm2','3-4-3');" />
<input type="button" value="3-5-2格式" onClick="javascript:formatmobile('400tel','fmm2','3-5-2');" />
<input type="button" value="3-2-5格式" onClick="javascript:formatmobile('400tel','fmm2','3-2-5');" />
</p>

發布時間:2016年9月19日 | 評論:0 | 瀏覽: | 標簽:Javascript  格式化  獲取字符串  

前端腳本

JS刪除頭尾兩端空格

JS刪除頭尾兩端空格

去除字符串左右兩邊的空格,在vbscript里面可以使用 trim函數,但在js中卻沒有這個內置方法,需要自己寫代碼。下面的實現方法用到了正則表達式。

第一種:寫成類的方法

<script language="javascript" type="text/javascript">
String.prototype.trim=function(){ //過濾首尾空格
	return this.replace(/(^\s*)|(\s*$)/g, "");
}
</script>

調用方式:

發布時間:2016年9月19日 | 評論:0 | 瀏覽: | 標簽:Javascript  格式化  獲取字符串  

前端腳本

JS求N個數字的最大公約數和最小公倍數

JS求N個數字的最大公約數和最小公倍數
<script language="javascript">
//函數功能:求N個數字的最大公約數和最小公倍數
//參數:數字集合(間隔符使用英文逗號, 如:16,24)
//調用方式:參照下方求兩位數字和三位數字的最大公約數和最小公倍數案例
//制作:凌陳亮(QQ:57404811)
function getGCDLCM(str){
	var arr=eval("[" + str + "]");
	var max=Math.max.apply(null, arr);
	var min=Math.min.apply(null, arr);
	var GCDLCM=new Object(); //函數返回對象
	GCDLCM.str=str; //輸入的數字集合
	GCDLCM.num=arr.length; //數字總個數
	var i,j,ifstr="";
	for(j=0;j<arr.length;j++){
		ifstr+=arr[j] + "<1";
		if(j<arr.length-1) ifstr+="||"
	}
	if(eval(ifstr)){
		GCDLCM.GCD=-1; //最大公約數
		GCDLCM.LCM=-1; //最小公倍數
		return GCDLCM;
	}
	//求最大公約數
	for(i=min;i>0;i--){
		ifstr="";
		for(j=0;j<arr.length;j++){
			ifstr+=arr[j] + "%" + i + "==0";
			if(j<arr.length-1) ifstr+="&&"
		}
		if(eval(ifstr)){
			GCDLCM.GCD=i; //最大公約數
			break;
		}
	}
	//求最小公倍數
	var n=1;
	for(j=0;j<arr.length;j++){ n=n*arr[j]; }
	for(i=max;i<=n;i++){
		ifstr="";
		for(j=0;j<arr.length;j++){
			ifstr+=i + "%" + arr[j] + "==0";
			if(j<arr.length-1) ifstr+="&&"
		}
		if(eval(ifstr)){
			GCDLCM.LCM=i; //最小公倍數
			break;
		}
	}
	return GCDLCM;
}
//例1:求兩個數的最大公約數和最小公倍數
var result=getGCDLCM("16,24");
window.document.write("<p>您要查最大公約數和最小公倍數的數字為:" + result.str + "</p>");
window.document.write("<p>數字個數為:" + result.num + " 個</p>");
window.document.write("<p>最大公約數為:" + result.GCD + "</p>");
window.document.write("<p>最小公倍數為:" + result.LCM + "</p>");
//例2:求三個數的最大公約數和最小公倍數
var result=getGCDLCM("16,24,96");
window.document.write("<p>您要查最大公約數和最小公倍數的數字為:" + result.str + "</p>");
window.document.write("<p>數字個數為:" + result.num + " 個</p>");
window.document.write("<p>最大公約數為:" + result.GCD + "</p>");
window.document.write("<p>最小公倍數為:" + result.LCM + "</p>");
</script>


發布時間:2016年9月18日 | 評論:0 | 瀏覽: | 標簽:Javascript  算法  

前端腳本

JS輸出1到100間的奇數和偶數

JS輸出1到100間的奇數和偶數
<script type="text/javascript">
jishu();
function jishu(){ //求奇數
	var str="",n=0;
    for(var i=1; i<=100; i++){
		if(i%2!=0){
			str=str + i + ","; //將奇數連到一個字符串中
			n++; //奇數個數+1
		}
    }
    window.document.write("<p>1-100間的奇數(單數)總數為:" + n + " 個</p>");
    window.document.write("<p>1-100間的奇數(單數)分別為:" + str.substr(0,str.length-1) +"</p>");
}
oushu();
function oushu(){ //求偶數
	var str="",n=0;
    for(var i=1; i<=100; i++){
		if(i%2==0){
			str=str + i + ","; //將偶數連到一個字符串中
			n++; //偶數個數+1
		}
    }
    window.document.write("<p>1-100間的偶數(雙數)總數為:" + n + " 個</p>");
    window.document.write("<p>1-100間的偶數(雙數)分別為:" + str.substr(0,str.length-1) +"</p>");
}
jioushu(100); //輸出1到100間的奇偶數
function jioushu(n){  //求偶奇數
	var str1="",str2="",n1=0,n2=0;
    for(var i=1; i<=n; i++){
		if(i%2!=0){
			str1=str1 + i + ","; //將奇數連到一個字符串中
			n1++; //奇數個數+1
		}else{
			str2=str2 + i + ","; //將偶數連到一個字符串中
			n2++; //偶數個數+1
		}
    }
    window.document.write("<p>1-100間的奇數(單數)總數為:" + n1 + " 個</p>");
    window.document.write("<p>1-100間的奇數(單數)分別為:" + str1.substr(0,str1.length-1) +"</p>");
    window.document.write("<p>1-100間的偶數(雙數)總數為:" + n2 + " 個</p>");
    window.document.write("<p>1-100間的偶數(雙數)分別為:" + str2.substr(0,str2.length-1) +"</p>");
}
</script>

發布時間:2016年9月18日 | 評論:0 | 瀏覽: | 標簽:Javascript  算法  

前端腳本

JS輸出1到100間的所有合數

JS輸出1到100間的所有合數
<script type="text/javascript">
heshu();
function heshu(){
    var str="",n=0;
    for(var i=1; i<=100; i++){
        var m=0; //非合數
        for(var j=2; j<i; j++){
            if(i%j==0){
                m=1; //合數
                break;
            }
        }
        if(m==1 && i!=2){
            str=str + i + ",";
            n++; //合數個數+1
        }
    }
    window.document.write("<p>1-100間的合數總數為:" + n + " 個</p>");
    window.document.write("<p>1-100間的合數分別為:" + str.substr(0,str.length-1) +"</p>");
}
</script>


發布時間:2016年9月18日 | 評論:0 | 瀏覽: | 標簽:Javascript  算法  

前端腳本

JS判斷日期時間格式是否有效

JS判斷日期時間格式是否有效

史上最完整最精確的驗證日期時間格式正則表達式:

/^\d{4}-((0?[1-9])|(1[0-2]))-((0?[1-9])|([12]\d)|(3[01])) (([01]?\d)|(2[0-3])):[0-5]\d:[0-5]\d$/

匹配合法格式為:yyyy-(m)m-(d)d (h)h:mm:ss
-:日期分隔符,減號(英文半角減號)
 :日期與時間中間的分隔符,空格(英文半角空格)
::時間分隔符,冒號(英文半角冒號)
yyyy:年份,必須4位數字
(m)m:月份,1-2位數字,如:9、09,最大只能為12,若為00、或大于12則不符合規則
(d)d:日,1-2位數字,如:9、09,最大只能為31,若為00、或大于31則不符合規則
(h)h:時,1-2位數字,如:9、09、00,最大只能為23,若大于23則不符合規則
mm:分,必須2位數字,如:09、00,最大只能為59,若大于59則不符合規則
ss:秒,必須2位數字,如:09、00,最大只能為59,若大于59則不符合規則

發布時間:2016年9月9日 | 評論:0 | 瀏覽: | 標簽:Javascript  表單驗證  字符串驗證  日期時間  

前端腳本

JS飄浮廣告代碼(兼容多瀏覽器)

JS飄浮廣告代碼(兼容多瀏覽器)

此JS飄浮廣告特效代碼可以飄浮DIV層,圖層中可放圖片、文字等任何HTML內容。滿屏到處移動著跑的飄動DIV廣告特效。

此浮動代碼由本人使用純原生JS制作,未采用JQUERY。代碼規范標準,使用HTML4 XHTML頭部標準或HTML5頭部都不影響JS的正常運行。

注:飄浮時只在瀏覽器窗口尺寸(即窗口可見區域大小)里飄動,不受滾動條長短影響。

發布時間:2016年9月7日 | 評論:0 | 瀏覽: | 標簽:Javascript  JS特效  JS控制DIV  浮動  

前端腳本

JS確認對話框confirm()用法總結(常用于彈出確定、取消刪除)

JS確認對話框confirm()用法總結(常用于彈出確定、取消刪除)

confirm() 方法

定義和用法
confirm() 方法用于顯示一個帶有指定消息和 OK 及取消按鈕的對話框。
語法

confirm(message)

參數  描述
message 要在 window 上彈出的對話框中顯示的純文本,即提示信息(而非 HTML 文本)
說明
如果用戶點擊確定按鈕,則 confirm() 返回 true。如果點擊取消按鈕,則 confirm() 返回 false。
在用戶點擊確定按鈕或取消按鈕把對話框關閉之前,它將阻止用戶對瀏覽器的所有輸入。在調用 confirm() 時,將暫停對 JavaScript 代碼的執行,在用戶作出響應之前,不會執行下一條語句。
提示:對話框按鈕的文字是不可改變的,因此請小心地編寫問題或消息,使它適合用確認和取消來回答。

發布時間:2016年9月1日 | 評論:0 | 瀏覽: | 標簽:Javascript  JS教程  JS特效  

前端腳本

JS實現組合算法總結

JS實現組合算法總結

算法一:循環,一組組合需要幾個元素就用幾個for(比較笨拙的方法)

示例中是從6個元素中取4個元素進行組合,并顯示組合種數和組合列表。

<script type="text/javascript">  
var str="01,02,03,04,05,06";
var strArray=str.split(",");
var len=strArray.length;
var newArray=new Array();
for(var i=0;i<len-3;i++){
	for(var j=i+1;j<len-2;j++){
		for(var k=j+1;k<len-1;k++){
			for(var l=k+1;l<len;l++){
				newArray.push(strArray[i]+" "+strArray[j]+" "+strArray[k]+" "+strArray[l]);
			}
		}
	}
}
var len2=newArray.length;
document.write("組合總個數為:" + len2 + "<br />");
for(i=0;i<newArray.length;i++){
	document.write(newArray[i] + "<br />");
}
</script>

算法二:可自己設置元素庫以及取N個元素進行組合。

發布時間:2016年8月31日 | 評論:0 | 瀏覽: | 標簽:Javascript  JS教程  算法  JS排列組合  

前端腳本

JS從M個元素中取N個排列算法(可重復元素)

JS從M個元素中取N個排列算法(可重復元素)

JS排列算法(可重復元素)示例:從4個元素中取3個進行排列,并顯示共有多少種排列方式

<script type="text/javascript">  
var str="01,02,03,04";
var strArray=str.split(",");
var len=strArray.length;
var newArray=new Array();
for(var i=0;i<len;i++){
	for(var j=0;j<len;j++){
		for(var k=0;k<len;k++){
			newArray.push(strArray[i]+" "+strArray[j]+" "+strArray[k]);
		}
	}
}
var len2=newArray.length;
document.write("排列方式種類有:" + len2 + " 種<br />");
for(i=0;i<newArray.length;i++){
	document.write(newArray[i] + "<br />");
}
</script>

以上代碼采用FOR循環方式,一組排列需要幾個元素就用幾個for

發布時間:2016年8月31日 | 評論:0 | 瀏覽: | 標簽:Javascript  JS教程  算法  JS排列組合  

前端腳本

JS全排列的7種算法總結(不重復元素)

JS全排列的7種算法總結(不重復元素)

全排列是一種時間復雜度為:O(n!)的算法。所有算法均使用JavaScript編寫,可直接運行。

算法一:循環,一組排列需要幾個元素就用幾個for(比較笨拙的方法)

<script type="text/javascript">  
var str="01,02,03,04";
var strArray=str.split(",");
var len=strArray.length;
var newArray=new Array();
for(var i=0;i<len;i++){
	for(var j=0;j<len;j++){
		if(j!=i){
		for(var k=0;k<len;k++){
			if(k!=i && k!=j){
			for(var l=0;l<len;l++){
				if(l!=i && l!=j && l!=k){
				newArray.push(strArray[i]+" "+strArray[j]+" "+strArray[k]+" "+strArray[l]);
				}
			}
			}
		}
		}
	}
}
var len2=newArray.length;
document.write("排列方式種類有:" + len2 + " 種<br />");
for(i=0;i<len2;i++){
	document.write(newArray[i] + "<br />");
}
</script>

算法二:交換算法(遞歸)

發布時間:2016年8月31日 | 評論:0 | 瀏覽: | 標簽:Javascript  JS教程  算法  JS排列組合  JS遞歸函數  

«12345»
色情激情片日本大全