当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 一些不错的JS 自定义函数

Javascript
阻止JavaScript事件冒泡传递(cancelBubble 、stopPropagation)
(转载)JavaScript中匿名函数,函数直接量和闭包
简单的无缝滚动程序-仅几行代码
Javascript中的数学函数集合
javascript之大字符串的连接的StringBuffer 类
javascript之对系统的toFixed()方法的修正
用javascript实现自定义标签
js在客户端验证密码强度,兼容FireFox和IE
javascript背景颜色按时变换
脚本分析、压缩、混淆工具 JSA新版本发布,压缩效率提高大约10%
javascript语句中的CDATA标签的意义
用javascript实现分割提取页面所需内容
网上抓的一个特效
js之点击 超连接,提示一个层.点击空白.层消失
模拟用户操作Input元素,不会触发相应事件
弹出广告特效代码(一个IP只弹出一次)
(仅IE下有效)关于checkbox 三态
JavaScript Archive Network 集合
关于__defineGetter__ 和__defineSetter__的说明
textContent在Firefox下与innerText等效的属性

Javascript 中的 一些不错的JS 自定义函数


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 276 ::
收藏到网摘: n/a

一些不错的JS 自定义函数 ,不少网站都在用,都是一些比较不错的函数,可以拿来直接使用。建议学习。 1、dayin()
作用:将id为dayin的内容,新建页面并打印,可解决打印某页面中的部分内容的问题。
使用方法:将要打印的内容通过 <span id="dayin"></span>包含起来,然后在某个按扭中定义事件
<input type="button" onclick="dayin()" value="打印">
复制代码 代码如下:
8、trim(str)
作用:去str两边空格
复制代码 代码如下:

function trim(str)
{
return str.replace(/^\s*|\s*$/g,"");
}

9、function bj_date(d1,d2)
作用:比较d1,d2日期的大小
复制代码 代码如下:

function bj_date(d1,d2)
{
/*
author:wxg
作用:比较日期大小
参数:d1 d2
字符型 年-月-日 类型,如 2005-01-22
返回值: 0/1/2
数字型
d1>d2 返回0
d1=d2 返回1
d1<d2 返回2
*/
if(d1==""&&d2==""){
return 3
}
if(d1==""||d2==""){
return 4
}
d1=d1.split("-")
d2=d2.split("-")
var a = new Date(Number(d1[0]),Number(d1[1]),Number(d1[2]))
var b=new Date(Number(d2[0]),Number(d2[1]),Number(d2[2]))
a = a.valueOf()
b=b.valueOf()
if(a-b>0)
return 0
if(a-b==0)
return 1
if(a-b<0)
return 2
}

10、格式化数字成货币格式
复制代码 代码如下:

function setCurrency(s){
if(/[^0-9\.\-]/.test(s)) return "invalid value";
s=s.replace(/^(\d*)$/,"$1.");
s=(s+"00").replace(/(\d*\.\d\d)\d*/,"$1");
s=s.replace(".",",");
var re=/(\d)(\d{3},)/;
while(re.test(s))
s=s.replace(re,"$1,$2");
s=s.replace(/,(\d\d)$/,".$1");
return s.replace(/^\./,"0.")
}

11、运行代码
复制代码 代码如下:

function runCode(obj) {
var winname = window.open('', "_blank", '');
winname.document.open('text/html', 'replace');
winname.opener = null // 防止代码对论谈页面修改
winname.document.writeln(obj.value);
winname.document.close();
}

12、保存代码
复制代码 代码如下:

function saveCode(obj) {
var winname = window.open('', '_blank', 'top=10000');
winname.document.open('text/html', 'replace');
winname.document.writeln(obj.value);
winname.document.execCommand('saveas','','code.htm');
winname.close();
}
function strLen(str) {
var count=0, asc, test='中文';
if (test.length==2) {
for (var i=0;i<str.length;i++) {
asc = str.charCodeAt(i);
if (asc < 0) asc += 65536;
if (asc > 255) count++;
}
}
return str.length+count;
}
//按字节数截取左侧字符串
function strSubLeft(str, len) {
var count=0, asc, ret = "";
for (var i=0;i<str.length;i++) {
asc = str.charCodeAt(i);
if (asc < 0) asc += 65536;
if (asc > 255) count++;
if (i + count >= len) {
ret = str.substr(0, i);
break;
}
}
return ret;
}
function getRandom(){
return "&"+Math.random()*1000+"&";
}
function checkInt(str){
if(str==null||str==""){
//alert("请输入数字!");
return false;
}
var digits = "1234567890";
var i = 0;
var strlen = str.length;
while((i<strlen)){
var char = str.charAt(i);
if(digits.indexOf(char) == -1) {
//alert("请输入正确的数字!");
return false;
}
i++;
}
return true;
}
function hasWord(str){
if(str.replace(/ /g,'')==""||str.replace(' ','')==""){
return false;
}else{
return true;
}
}
function replaceAll(oldStr,findStr,repStr){
var srchNdx = 0;
var newStr = "";
while (oldStr.indexOf(findStr,srchNdx) != -1){
newStr += oldStr.substring(srchNdx,oldStr.indexOf(findStr,srchNdx));
newStr += repStr;
srchNdx = (oldStr.indexOf(findStr,srchNdx) + findStr.length);
}
newStr += oldStr.substring(srchNdx,oldStr.length);
return newStr;
}
function checkPrice(inputValue){
inputValue=""+inputValue;
myRegExp = /^(\d+),(\d+)$/;
if (inputValue.match(myRegExp)) return true;
else return false;
}
/*验证正整数*/
function checkNum(valueStr){
var myRegExp = /^(\d+)$/;
if (valueStr.match(myRegExp)){
return true;
}else{
return false;
}
}
/*限制obj(通常为TEXTAREA)中的字符个数*/
function checkWordsLength(obj,maxLength){
if(obj.value.length>=maxLength){
obj.value="http://www.ruanchen.com/" }
}