您的位置:首页 > Web前端 > JavaScript

在使用JS框架之前自己写的一些工具代码

2016-04-16 15:48 796 查看
//vb2005xu@sina.com版权所有 (*^__^*) 嘻嘻……

//function -- Debug

function debug(msg)

{

if (msg == undefined)

{

msg = 'Not Parameter' ;

}

alert('Debug: ' + msg);

}

//function -- DOM

function $(id){return document.getElementById(id);}

function $name(ids){return document.getElementsByName(ids);}

//function -- 操作 隐藏/显示 ; 禁用/恢复

function hide(obj){obj.style.display="";}

function unhide(obj){obj.style.display="none";}

function lock(obj){obj.disabled="disabled";}

function unlock(obj){obj.disabled="";}

function getFocus(obj){obj.focus();}

function setSelect(obj){obj.select();}

//function -- Form 控件操作

function unlockTextInput(id){var obj=$(id);unlock(obj);getFocus(obj);setSelect(obj);}

function unlockSelectOption(id){var obj=$(id);unlock(obj);getFocus(obj);}

function checkboxVarity(ids) //验证多选框有无选中

{

var checkboxobj = $name(ids);

var selectState = false ;

for(i = 0 ; i < checkboxobj.length ; i++ )

{

if (checkboxobj[i].checked)

{

selectState = true ;

break ;

}

}

return selectState ;

}

//function -- Cookie

function createCookie(name, value, days) {

var expires = '';

if (days) {

var date = new Date();

date.setTime(date.getTime() + (days*24*60*60*1000));

var expires = '; expires=' + date.toGMTString();

}

document.cookie = name + '=' + value + expires + '; path=/';

}

function readCookie(name) {

var cookieCrumbs = document.cookie.split(';');

var nameToFind = name + '=';

for (var i = 0; i < cookieCrumbs.length; i++) {

var crumb = cookieCrumbs[i];

while (crumb.charAt(0) == ' ') {

crumb = crumb.substring(1, crumb.length); /* delete spaces */

}

if (crumb.indexOf(nameToFind) == 0) {

return crumb.substring(nameToFind.length, crumb.length);

}

}

return null;

}

function eraseCookie(name) {

createCookie(name, '', -1);

}

//function -- Base64

function stringToBase64(string, padchar) {

return window.btoa(string);

}

function base64ToString(string) {

string = string.replace(/\s+/g, "");

return window.atob(string);

}

//function -- 操作Table

function getCurrentLineIndex(id){var obj=$(id);return obj.rowIndex;}

function getCurrentColumnIndex(id){var obj=$(id);return obj.cellIndex;}

//function -- 操作Code

function codeHightLight(id){var obj=$(id);obj.style.background='#fff';}

//Ajax

//define a bool paramter to check IE instance

var xmlhttp = false ;

//check client brower is IE

try {

// If javascript is greater than 5

xmlhttp = new ActiveXObject("MSXML2.XMLHTTP");

//alert("You are using Microsoft Internet Explorer .");

}

catch (e){

//else will use ActiveXObject older version

try {

xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");

//alert("You are using old Microsoft Internet Explorer .");

}

catch (e){

//using brower is no IE.

xmlhttp = false ;

}

}

if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {

xmlhttp = new XMLHttpRequest();

//alert("You are not using Microsoft Internet Explorer .");

}

function appendText(obj,xmlhttp)

{

if (xmlhttp.readyState == 4 && xmlhttp.status == 200 ){

obj.innerHTML = xmlhttp.responseText ;

}

}

function makerequest(serverpage,objID)

{

var obj = document.getElementById(objID);

xmlhttp.open("GET",serverpage);

xmlhttp.onreadystatechange = appendText(obj,xmlhttp) ;

xmlhttp.send(null) ;

}

/**

* ###################

* ################### Lalestory 项目中抽取出来的JS功能函数--作者: 许消寒

* ###################

*/

/**

* 功能:判断一个字符串是否为空字符串

* 参数:str 检验值

* 返回:TRUE OR FALSE

*/

function isBlank(str){

if(str.length < 1){

return true;

}

for(i = 0; i < str.length; i ++){

if(str.substring(i, i + 1) != ' '){

return false;

}

}

return true;

}

/**

* 功能:检验长度是否正确

* 参数:str 检验值,minlen 最小长度,maxlen 最大长度

* 返回:TRUE OR FALSE

*/

function checkByteLength(str,minlen,maxlen) {

if (str == null) return false; //为空返回false

var l = str.length;

var blen = 0;

for(i=0; i<l; i++) { //循环取得检验值的长度

if ((str.charCodeAt(i) & 0xff00) != 0) {

blen ++;

}

blen ++;

}

if (blen > maxlen || blen < minlen) { //判断长度是否合法

return false;

}

return true;

}

/**

* 功能:检验用户名是否合法

* 参数:value 检验值

* 返回:TRUE OR FALSE

*/

function validateUsername(value){

var patn = /^[a-zA-Z]+[a-zA-Z0-9]+$/;

//var patn = /^[^\s]*$/;

if(!checkByteLength(value,4,20)) return true; //判断长度是否合法

if(!patn.test(value)){ //判断格式是否合法

return true;

}

return false;

}

/**

* 功能:检验登陆或者注册的用户名 -- 用户名称至少为4个字符,但是少于20个字符

* 参数:value 检验值

* 返回:TRUE OR FALSE

*/

function checkUserName(value)

{

if(value == '') //判断用户名是否为空,返回false

{

return false;

}

if(validateUsername(value)) //判断用户名是否合法

{

return false;

}

return true;

}

/**

* 功能:检验Email是否合法

* 参数:value 检验值

* 返回:TRUE OR FALSE

*/

function validateEmail(value){

var patn=/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/;

if(!patn.test(value)) return false; //判断Email是否合法

return true;

}

/**

* 功能:检验Email

* 参数:value 检验值

* 返回:TRUE OR FALSE

*/

function CheckEmail(value)

{

if(value == '') //判断Email是否为空

{

return false;

}

if(!validateEmail(value)) //判断Email是否合法

{

return false

}

return true;

}

/**

* 功能: 检验是否包含特殊字符

* 参数:value 检验值

* 返回:TRUE OR FALSE

*/

function validateSpecSymbol(value) {

return true ;//! /^[a-zA-Z0-9\u4E00-\u9FA5#\]*$/.test(value);

}

/**

* 功能: 检验是否包含特殊字符

* 参数:value 检验值

* 返回:TRUE OR FALSE

*/

function CheckSpecSymbol(value)

{

if(value == '') //判断Email是否为空

{

return false;

}

if(!validateSpecSymbol(value)) //判断Email是否合法

{

return false ;

}

return true;

}

/**

* 功能: 返回指定颜色的文本

* 参数:content 文本 , colorValue为颜色值 , cssClass 为CSS风格

* 返回:TRUE OR FALSE

*/

function getSpeciColorText(content,size,colorValue,cssClass)

{

var str = "<font size='" + size + "' class='" ;

str += cssClass + "' color='"

str += colorValue + "'>" ;

str += content + "</font>" ;

return str ;

}

/**

* 功能: 在指定的页面标签后放入一张图片

* 参数:parentTagName为指定的页面标签 ,imgsrc为图片路径

* 返回:TRUE OR FALSE

*/

function appendImg(parentTagName,imgsrc)

{

//接收 document.all.yourTagName

var parentTag = document.getElementsByName(parentTagName)[0] ;

var str = "<img src='" + imgsrc + "'>" ;

parentTagName.innerHTML = str ;

}

/* ################################## 在beijingextreme项目中的具体应用 ###############################*/

//function -- 操作层

function $(elementID)

{

return document.getElementById(elementID) ;

}

function showDiv(divID)

{

var divId = $(divID) ;

divId.style.display = "" ;

}

function hideDiv(divID)

{

var divId = $(divID) ;

divId.style.display = "none" ;

}

//1.彻底屏蔽鼠标右键

oncontextmenu="window.event.returnValue=false"

<table border oncontextmenu=return(false)><td>no</table> 可用于Table

//2.取消选取、防止复制

<body onselectstart="return false">

//3.不准粘贴

onpaste="return false"

//4.防止复制

oncopy="return false;" oncut="return false;"

//5.离开页面时要求确认

window.onbeforeunload = function(){return '';}; //增加事件

window.onbeforeunload = null; //删除事件

//6.IE地址栏前换成自己的图标

<link rel="Shortcut Icon" href="favicon.ico">

//7.可以在收藏夹中显示出你的图标

<link rel="Bookmark" href="favicon.ico">

//8.关闭输入法

<input style="ime-mode:disabled">

//9.网页将不能被另存为

<noscript><*** src="/*.html>";</***></noscript>

//10.取得控件的绝对位置

//Javascript

<script language="Javascript">

function getIE(e){

var t=e.offsetTop;

var l=e.offsetLeft;

while(e=e.offsetParent){

t+=e.offsetTop;

l+=e.offsetLeft;

}

alert("top="+t+"/nleft="+l);

}

</script>

//11.光标是停在文本框文字的最后

<script language="javascript">

function cc()

{

var e = event.srcElement;

var r =e.createTextRange();

r.moveStart("character",e.value.length);

r.collapse(true);

r.select();

}

</script>

<input type=text name=text1 value="123" onfocus="cc()">

//12.判断上一页的来源

javascript :

document.referrer

//13.最小化、最大化、关闭窗口

<object id=hh1 classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">

<param name="Command" value="Minimize"></object>

<object id=hh2 classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">

<param name="Command" value="Maximize"></object>

<OBJECT id=hh3 classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11">

<PARAM NAME="Command" value="/Close"></OBJECT>

<input type=button value="/最小化 onclick=hh1.Click()>

<input type=button value="/blog/最大化 onclick=hh2.Click()>

<input type=button value=关闭 onclick=hh3.Click()>

//本例适用于IE

//屏蔽功能键Shift,Alt,Ctrl

<script>

function look(){

if(event.shiftKey)

alert("禁止按Shift键!"); //可以换成ALT CTRL

}

document.onkeydown=look;

</script>

//网页不会被缓存

<META HTTP-EQUIV="pragma" CONTENT="no-cache">

<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">

<META HTTP-EQUIV="expires" CONTENT="Wed, 26 Feb 1997 08:21:57 GMT">

或者<META HTTP-EQUIV="expires" CONTENT="0">

//让弹出窗口总是在最上面:

<body onblur="this.focus();">

//怎样去掉图片链接点击后,图片周围的虚线?

<a href="#" onFocus="this.blur()"><img src="/logo.jpg" border=0></a>

//电子邮件处理提交表单

<form name="form1" method="post" action=mailto:****@***.com

enctype="text/plain">

<input type=submit>

</form>

//在打开的子窗口刷新父窗口的代码里如何写?

window.opener.location.reload()

//在页面中如何加入不是满铺的背景图片,拉动页面时背景图不动

<STYLE>

body

{background-image:url(/logo.gif); background-repeat:no-repeat;

background-position:center;background-attachment: fixed}

</STYLE>

//怎么判断是否是字符

if (/[^/x00-/xff]/g.test(s)) alert("含有汉字");

else alert("全是字符");

TEXTAREA自适应文字行数的多少

<textarea rows=1 name=s1 cols=27 onpropertychange

="this.style.posHeight=this.scrollHeight">

</textarea>

//选择了哪一个Radio

<HTML><script language="vbscript">

function checkme()

for each ob in radio1

if ob.checked then

window.alert ob.value

next

end function

</script><BODY>

<INPUT name="radio1" type="radio" value="/style" checked>Style

<INPUT name="radio1" type="radio" value="/blog/barcode">Barcode

<INPUT type="button" value="check" onclick="checkme()">

</BODY></HTML>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: