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

js的一些小功能函数整理

2010-08-01 23:47 447 查看
今天虽然是八一  可是周末我向来喜欢在家呆着呀。早上起来洗一下衣服,中午吃完饭小睡一会。下午整理了一下最近的东西  用到过的一些js小函数整理成一个文件  方便以后查阅。刚整理完~ 放上来大家秀秀 

 

内容如下:

///常用的js函数整理

//1. 复制文本内容
function mycopy_head()
{
var clipBoardContent='';
clipBoardContent+=document.getElementById('text_url').innerHTML;
window.clipboardData.setData("Text",clipBoardContent);
alert('复制成功,您可以转发给您QQ或MSN上好友!');
}

//2. 设置问首页
//html
<a onclick="SetHome(this,window.location)">设为首页</a>
//js
function SetHome(obj,vrl){
try{
obj.style.behavior='url(#default#homepage)';obj.setHomePage(vrl);
}
catch(e){
if(window.netscape) {
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
}
catch (e)  {
alert("此操作被浏览器拒绝!/n请在浏览器地址栏输入“about:config”并回车/n然后将[signed.applets.codebase_principal_support]设置为'true'");
}
var prefs = Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces.nsIPrefBranch);
prefs.setCharPref('browser.startup.homepage',vrl);
}
}
}

//3. 添加到收藏夹
//html
<a onclick="AddFavorite(window.location,document.title)">加入收藏</a>
//js
//方法1
function AddFavorite(sURL, sTitle)
{
try
{
window.external.addFavorite(sURL, sTitle);
}
catch (e)
{
try
{
window.sidebar.addPanel(sTitle, sURL, "");
}
catch (e)
{
alert("加入收藏失败,请使用Ctrl+D进行添加");
}
}
}
//方法2
//@parm title 主题名
//@oarm url 收藏地址
function AddFav(title,url)
{
if ((typeof window.sidebar == 'object') && (typeof window.sidebar.addPanel == 'function'))//Gecko
{
window.sidebar.addPanel(title,url,'');
}
else//IE
{
window.external.AddFavorite(url,title);
}
}

//4. 返回并刷新当前页面
history.go(0);window.location.reload(true);

//5. 打开/关闭当前页面
window.open();
window.close();

//6. 验证邮箱地址
var patrn = /^/w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*$/;
if (!patrn.exec('获取到的邮箱地址'))
{
alert("您好,您输入的注册邮箱地址有误!");
exit();
}

//7. 获取指定 ID 的值
function getTextValues(id){
var data = document.getElementById(id).value;
return data;
}

//8.获取复选框、单选框的值
function getRadioValue(name){
var radioes = document.getElementsByName(name);
for(var i=0;i<radioes.length;i++)
{
if(radioes[i].checked){
return radioes[i].value + '-';
}
}
return false;
}

//9 设置class 属性的值
function idCssClassNameOut(id,classname){
document.getElementById(id).className = classname;
}

//10 刷新当前页面
function wreload(){
location.reload();
}

//11 设置cookie
//@parm c_name cookie 名称
//@parm value  cookie  值
//@parm expiredays cookie 有效期
function setCookie(c_name,value,expiredays)
{
var exdate=new Date();
exdate.setDate(exdate.getDate()+expiredays);
document.cookie=c_name+ "=" +escape(value)+((expiredays==null) ? "" : ";expires="+exdate);
}

//12 获取cookie 的值
//@parm c_name  cookie 名称
//decodeURI编码
//decodeURIComponent解码
function getCookie(c_name)
{
if (document.cookie.length>0)
{
c_start=document.cookie.indexOf(c_name + "=");
if (c_start!=-1)
{
c_start=c_start + c_name.length+1;
c_end=document.cookie.indexOf(";",c_start);
if (c_end==-1)
c_end=document.cookie.length;
return decodeURIComponent(document.cookie.substring(c_start,c_end));
}
}
return null;
}

//13 去除字符串空格
function formatStringInfo(str)
{
var str = str;
if(str==null)
{
return '';
}
str = str.replace(//r/g,"");
str = str.replace(//n/g,"");
str = str.replace(//s/g,"");
return  str;
}

//14 获取字符串长度
function getLen(str) {
var len = 0;
for (var i=0; i<str.length; i++) {
if (str.charCodeAt(i) > 127)
len += 3; //utf8格式下中文占3位,gb2312请修改位2位
else
len++;
}
return len;
}

//15 设置某一 ID 显示或隐藏
function show(c_Str){
if(document.all(c_Str).style.display=='none'){
document.all(c_Str).style.display='block';
}else{
document.all(c_Str).style.display='none';
}
}

//16 全选/反选
//html
<ol>
<input id="ta_clickall" name="ta_clickall" type="checkbox" value="-1" onclick="javascript:selectall(this.checked,ta_clickall,'marriage[]')"/>全选/反选
<input type="checkbox" name="marriage[]" onclick=changechecked(this,"ta_clickall","marriage[]") value="1">一
<input type="checkbox" name="marriage[]" onclick=changechecked(this,"ta_clickall","marriage[]") value="2">二
<input type="checkbox" name="marriage[]" onclick=changechecked(this,"ta_clickall","marriage[]") value="3">三
<input type="checkbox" name="marriage[]" onclick=changechecked(this,"ta_clickall","marriage[]") value="4">四
<input type="checkbox" name="marriage[]" onclick=changechecked(this,"ta_clickall","marriage[]") value="5">五
<input type="checkbox" name="marriage[]" onclick=changechecked(this,"ta_clickall","marriage[]") value="6">六
</ol>
//js
//formname form 表单名
function selectall(v,s,d){
var f = document.forms["formname"];
for (i=0;i<f.elements.length;i++)
if (f.elements[i].name==d) f.elements[i].checked = v;
document.forms["formname"].elements["s"].checked = v;
}
// 改变选择列的颜色设置默认选中/未选中 -->
function changechecked(checkbut,all,d){
var v =checkbut.checked;
if (v) {
checkbut.checked = true;
if(isallselected(d)){
document.forms["formname"].elements[all].checked = true;
}
}else{
document.forms["formname"].elements[all].checked = false;
checkbut.checked = false;
}
}
//--是否全部选中? -->
function isallselected(d){
var selectcount = 0;
var allcount=0;
var f = document.forms["formname"];
for(i=0;i<f.elements[d].length;i++){
if (f.elements[d][i].checked){
selectcount = selectcount + 1;
}
}
for(i=0;i<f.elements.length;i++){
if ((f.elements[i].name.indexOf(d)>-1)){
allcount = allcount+1;
}
}
if(selectcount==allcount)
return true;
else
return false;
}

//17 文本输入框字数限制
<span id="charnum" style="color: rgb(159, 0, 4);" mce_style="color: #9f0004;">0</span>/200<br />
<textarea name="message" id="comment_message" rows="5" cols="60" class="tex02"onkeydown="ctrlEnter(event, 'commentsubmit_btn');" onkeyup="if(this.value.length>200){this.value=this.value.substring(0,200);}else{document.getElementById('charnum').innerHTML=0+this.value.length;}"></textarea>

//18 验证输入框只能输入数字
if (!IsNum2(document.getElementById("文本框ID").value)) {
alert("该文本输入框必须是数字");
return false;
}
function IsNum2(document.getElementById("文本框ID").value)
{
var s = theField;
var Number = "0123456789.";
for (i=0;i<s.length;i++)
{
var   c =  s.charAt(i);
if   (Number.indexOf(c)   ==   -1)   return false;
}
return   true;
}

//19 强制离开提示
function window.onbeforeunload()
{
if(event.clientX>360&&event.clientY<0)
{
window.event.returnValue="提示:您尚未完成该页面操作确定离开吗?";
}
}


ok  还有一些比较具体的文件 有时间在整理出来好了。睡觉了~

2010-08-0200:02:26
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息