JS常用代码块

时间:2025-01-18 19:13:33

1. 加入收藏夹代码

<script type="text/javascript">
function AddFavorite(sURL,sTitle){
	try{
	    (sURL, sTitle);
	}catch (e){
	    try{
	        (sTitle, sURL, "");
	    }catch (e){
	        alert("加入收藏失败,请使用Ctrl+D进行添加");
	    }
	}
}
</script>
<a href=”javascript:favorite(‘李刚的学习专栏’,’/ligang2585116’)”>加入收藏</a>

2. 设置给任何层添加事件触发调用对象层的内容

function showid(idname){
	var newBox=(idname);
	(newBox)
}
//调用方法: 
<a href="#none" onClick="showid('box')">测试按钮</a>
<div >测试内容</div>

3. js 获取文档高度

网页可见区域宽:
网页可见区域高:
网页可见区域宽: (包括边线的宽)
网页可见区域高: (包括边线的宽)
网页正文全文宽:
网页正文全文高:
网页被卷去的高:
网页被卷去的左:
网页正文部分上:
网页正文部分左:
屏幕分辨率的高:
屏幕分辨率的宽:
屏幕可用工作区高度:
屏幕可用工作区宽度:
HTML精确定位:scrollLeft,scrollWidth,clientWidth,offsetWidth
scrollHeight: 获取对象的滚动高度。
scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离
scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离
scrollWidth:获取对象的滚动宽度
offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度
offsetLeft:获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置
offsetTop:获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置
相对文档的水平座标
相对文档的垂直座标
相对容器的水平坐标
相对容器的垂直坐标
垂直方向滚动的值
+ 相对文档的水平座标+垂直方向滚动的量

4. js获取对象字符串,截取所需位数的内容

var data = $('a').text();
data =  > 20 ? ((0,20)+"…") : data;

5. Javascript获取地址栏参数的三种方法

//方法一:
<script type="text/javascript">
 = function(name) {
	var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
	var r = (("\?")+1).match(reg);
	if (r!=null) 
		return unescape(r[2]); 
	return null;
}
var strHref = "/?a=aaa&b=bbb&c=ccc";
(("a"));
(("b"));
(("c"));
</script>
//方法二:
<script type="text/javascript">
function getUrlPara(paraName){
	var sUrl = ;
	var sReg = "(?:\\?|&){1}"+paraName+"=([^&]*)";
	var re=new RegExp(sReg,"gi");
	(sUrl);
	return RegExp.$1;
}
//应用实例:test_para.html?a=11&b=22&c=33
(getUrlPara("a"));
(getUrlPara("b"));
</script>
//方法三:
<script type="text/javascript">
function Request(strName){
	var strHref = "/?a=aaa&b=bbb&c=ccc";
	var intPos = ("?");
	var strRight = (intPos + 1);
	var arrTmp = ("&");
	for(var i = 0; i < ; i++) {
		var arrTemp = arrTmp[i].split("=");
		if(arrTemp[0].toUpperCase() == ()) 
			return arrTemp[1];
	}
	return "";
}
(Request("a"));
(Request("b"));
(Request("c"));
</script>

6. div已经有一个class值,s再给它添加一个class值

("comn").className+=" comn";

7. iframe操作

a. 在iframe子页面中获取当前iframe的id(firefox可以)
var frameId =  &&  || '';
遍历父页面所有iframe并输出ID(firefox可以)
function iframeID(){
	var fs = ;
	for(var i = 0; i < ; i++){
		if (window == fs[i]){
			(("iframe")[i].id)
			return ("iframe")[i].id;
		}
	}
};
b. js判断iframe是否加载完成
var iframe = ("iframe");
 = "";
if (){
	("onload", function(){
		alert("Local iframe is now loaded.");
	});
} else {
	 = function(){
		alert("Local iframe is now loaded.");
	};
}
c. js判断iframe是加载成功还是加载失败
url = ('iframe1').src;
var xmlhttp = new XMLHttpRequest();
("GET",url,true);
();
 = function(){
	if( == 4){
		if ( == 200){
			alert("加载成功!");
		} else {
			alert("加载失败!");
		}
	}
}
var oFrm = ("ifrm");
 =  = function() {
	if ( &&  != 'complete') 
		return;
	else {
		onComplete();
	}
}
d 加载iframe 禁用缓存
1. 将http header访问设置成no-cache的:
<meta HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">
<meta HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">
2. 在web site 后面加个随机参数,绕过相同url读取cache问题
 = "/page/?random=" + (new Date()).getTime() + (() * 1000000);

8. 验证邮箱格式是否正确

function chkEmail(strEmail) {
    if (!/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(strEmail)) {
        return false;
    }
    else {
        return true;
    }
}

9. 判断设备为PC或是移动终端

//判断平台
isPCByPlat = function(){
	var platForm = ();
	var isWin = (platForm=="win32")||(platForm=="win64")||(platForm=="windows")||(("win") > -1);
	if(isWin) 
		return "windows";
	var isMac = (platForm=="mac68k")||(platForm=="macppc")||(platForm=="macintosh")||(platForm=="macintel");
	if(isMac) 
		return "mac";
	return false;
};
//判断UA
isPCByOSList = function(uaArg){
	var pcOS = ["AIX","Amiga","BeOS","DragonFly","FreeBSD","GNU","Haiku","HP-UX","IRIX","Joli","Java","Macintosh","Minix","MorphOS","NetBSD","OpenBSD","PClinuxOS","QNX x86pc","SunOS","Ubuntu","Mint","Red Hat","Slackware","SUSE","PCLinuxOS","Debian","Fedora","CentOS","Vine","Arch Linux","Gentoo","Kanotix","Mandriva"];
	for (var i = 0; i < ; i++){
		if((pcOS[i]) > -1){
			return true;
		}
	};
	return false;
};

if(isPCByPlat() || isPCByOSList()){
	("PC");
} else {
	("Mobile");
};

10. 动态插入js

function loadScript(url, callback) {
	//创建script
	var script = ("script");
	 = "text/javascript";
	 = url;
	("head")[0].appendChild(script);
	//加载完毕回调
	if() { //for IE
		 = function() {
			if( == "loaded" ||  == "complete") {
				 = null;
				if(callback){
					callback();
				}
			}
		};
	}else { //for Others
		 = function() {
			if(callback){callback();}
		};
	}
}
//加载script
loadScript("/testhtml/jquery/");

11. js实现页面跳转的几种方式

a. ="?backurl="+;
b. (-1); //返回
c. (""); //针对IE的
d. ="";
e. =""; //非法访问

12. js获取css属性值

/**
* GetCurrentStyle
*/
function GetCurrentStyle(obj, style){
	if () { //IE浏览器
		return [style];
	} else if () { //W3C标准浏览器
		propprop = (/([A-Z])/g, "-$1");
		propprop = ();
		return (obj, null)[propprop];
	}
	return null;
}; //GetCurrentStyle


var dd = ("box");
(GetCurrentStyle(dd, "display"));

13. 日期转数值

var d = +new Date();

14. 漂亮的随机码

().toString(16).substring(2); //14位
().toString(36).substring(2); //11位

15. 用0补全位数

function prefixInteger(num, length) {
	return (num / (10, length)).toFixed(length).substr(2);
};
prefixInteger(31, 4);//0031