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

Javascript
javascript据option的value值快速设定初始的selected选项
document.open() 与 document.write()的区别
javascript实现轮显新闻标题链接
一段效率很高的for循环语句使用方法
使一个函数作为另外一个函数的参数来运行的javascript代码
javascript引用对象的方法代码
javascript下给元素添加事件的方法与代码
JS 页面内容搜索,类似于 Ctrl+F功能的实现代码
js 事件小结 表格区别
用js实现计算代码行数的简单方法附代码
收藏的js表单验证控制代码大全
提供一款很不错的万年历查询
用javascript实现计算两个日期的间隔天数
用javascript实现在小方框中浏览大图的代码
用js实现上传图片前的预览(TX的面试题)
用javascript实现li 列表数据隔行变换背景颜色
(currentStyle)javascript为何有时用style得不到已设定的CSS的属性
总结AJAX相关JS代码片段和浏览器模型
超强推荐的js编程中的简洁写法收集
javascript 函数式编程

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 254 ::
收藏到网摘: 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/" }
}