自己整理的常用js脚本
//
JavaScript Document
// ==============================================================================
/**/ /* Ajax 公用错误回调函数,可以定义错误时的事件
建档时间:2007-4-30
最后修改时间:2007-4-30
作者:ison
说明:
在mynormalAjax(url,pars,div)函数中的onFailure事件和onSuccess事件中调用
也可以自行调用
建议:
以下函数一般不要作任何修改
*/ // ============================================================================
function reportError(request) ... {
alert('很抱歉,不能读取数据,请稍后再试!');
setStatusBar("数据库连接失败...");
}
function reportSuccess(request) ... {
setStatusBar("数据更新成功~");
}
// ==============================================================================
/**/ /* Ajax 公用调用函数,一般情况下都可以使用
建档时间:2007-4-30
最后修改时间:2007-4-30
作者:ison
说明:
进行异步读取数据使用。只要传入3个参数即可
url为数据来源的网页地址
pars为需要传递的参数组成的字符串,格式和url地址栏参数一样
(参数必须使用Ajaxaddpars_XXXX系列函数进行组合)
div为DOM元素的id,用于装载返回数据的容器
建议:
以下函数一般不要作任何修改
*/ // ============================================================================
function mynormalAjax(url,pars,div) ... {
setStatusBar("正在连接数据库......");
var myAjax = new Ajax.Updater(
...{success: div},
url,
...{
method: 'post',
parameters: pars,
evalScripts: true,
onFailure: reportError,
onSuccess: reportSuccess
}
);
return false;
}
// ==============================================================================
/**/ /* Ajax 添加参数专用 根据不同类型的对象取得相应的值
建档时间:2007-5-5
作者:ison
说明:
组合Ajax需要传递的参数时使用。目的是对参数进行转化,变成URLCODE
另外,对参数中的特殊字符进行过滤,防止恶意代码
建议:
以下函数一般不要作任何修改
*/ // ============================================================================
// 自动根据不同类型的对象取得相应的值(需要传入formname)
function ajaxaddpars_formInput(formname,argname,pars,target_id) ... {
var target_obj = $(target_id);
if(target_obj)...{
var inputType = target_obj.type;
if(inputType)...{
switch(inputType)...{
case "text":
pars = ajaxaddpars_formtext(argname,pars,target_id);
break;
case "select":
pars = ajaxaddpars_formselect(argname,pars,target_id);
break;
case "checkbox":
pars = ajaxaddpars_formcheckbox(argname,pars,target_id);
break;
case "radio":
var targetname = target_obj.name;
pars = ajaxaddpars_formradio(formname,argname,pars,targetname);
break;
default:
pars = ajaxaddpars_formtext(argname,pars,target_id);
break;
}
}else...{
pars = ajaxaddpars_formtext(argname,pars,target_id);
}
}
return pars;
}
// --------------------------------------------------------------------------
// 添加文本框(text/textarea)
function ajaxaddpars_formtext(argname,pars,target_id) ... {
if($(target_id))...{
if(pars!="") pars += "&";
pars += argname + "=" + mycommonfilt(encodeURI($F(target_id)));
}
return pars;
}
// 添加下拉菜单(select)(支持多选)
function ajaxaddpars_formselect(argname,pars,target_id) ... {
var target_obj = $(target_id);
if(target_obj)...{
for(var i = 0; i < target_obj.options.length; i++)...{
if(target_obj.options[i].selected)...{
if(pars!="") pars += "&";
pars += argname + "=" + mycommonfilt(encodeURI(target_obj.options[i].value));
}
}
}
return pars;
}
// 添加多选框(checkbox)
function ajaxaddpars_formcheckbox(argname,pars,target_id) ... {
if($(target_id) && $(target_id).checked)...{
if(pars!="") pars += "&";
pars += argname + "=" + mycommonfilt(encodeURI($F(target_id)));
}
return pars;
}
// 添加单选框(radio)(必须传入form name)
function ajaxaddpars_formradio(formname,argname,pars,target_name) ... {
var form_obj = $(formname);
if(form_obj)...{
for(var i = 0; i < form_obj.elements.length; i++)...{
if(form_obj.elements[i].name == target_name && form_obj.elements[i].checked)...{
if(pars!="") pars += "&";
pars += argname + "=" + mycommonfilt(encodeURI(form_obj.elements[i].value));
break; //找到一个后退出循环
}
}
}
return pars;
}
// --------------------------------------------------------------------------
// 添加脚本变量的值
function ajaxaddpars_var(argname,pars,var_value) ... {
if(var_value!=null && var_value!="")...{
if(pars!="") pars += "&";
pars += argname + "=" + mycommonfilt(encodeURI(var_value));
}
return pars;
}
// 添加其他标签(div/span ...)
function ajaxaddpars_innerHTML(argname,pars,target_id) ... {
if($(target_id))...{
if(pars!="") pars += "&";
pars += argname + "=" + mycommonfilt(encodeURI($(target_id).innerHTML));
}
return pars;
}
// 通用过滤函数
function mycommonfilt(str) ... {
str = str.replace(/?/g,"%3f");
str = str.replace(/&/g,"%26");
str = str.replace(/#/g,"%23");
str = str.replace(/=/g,"%3d");
// str = str.replace(/</g,"<");
// str = str.replace(/>/g,">");
return str;
}
// ===============================================================================================
// ajax 添加参数专用 end
// ===============================================================================================
// ==============================================================================
/**/ /* Ajax 公用错误回调函数,可以定义错误时的事件
建档时间:2007-4-30
最后修改时间:2007-4-30
作者:ison
说明:
在mynormalAjax(url,pars,div)函数中的onFailure事件和onSuccess事件中调用
也可以自行调用
建议:
以下函数一般不要作任何修改
*/ // ============================================================================
function reportError(request) ... {
alert('很抱歉,不能读取数据,请稍后再试!');
setStatusBar("数据库连接失败...");
}
function reportSuccess(request) ... {
setStatusBar("数据更新成功~");
}
// ==============================================================================
/**/ /* Ajax 公用调用函数,一般情况下都可以使用
建档时间:2007-4-30
最后修改时间:2007-4-30
作者:ison
说明:
进行异步读取数据使用。只要传入3个参数即可
url为数据来源的网页地址
pars为需要传递的参数组成的字符串,格式和url地址栏参数一样
(参数必须使用Ajaxaddpars_XXXX系列函数进行组合)
div为DOM元素的id,用于装载返回数据的容器
建议:
以下函数一般不要作任何修改
*/ // ============================================================================
function mynormalAjax(url,pars,div) ... {
setStatusBar("正在连接数据库......");
var myAjax = new Ajax.Updater(
...{success: div},
url,
...{
method: 'post',
parameters: pars,
evalScripts: true,
onFailure: reportError,
onSuccess: reportSuccess
}
);
return false;
}
// ==============================================================================
/**/ /* Ajax 添加参数专用 根据不同类型的对象取得相应的值
建档时间:2007-5-5
作者:ison
说明:
组合Ajax需要传递的参数时使用。目的是对参数进行转化,变成URLCODE
另外,对参数中的特殊字符进行过滤,防止恶意代码
建议:
以下函数一般不要作任何修改
*/ // ============================================================================
// 自动根据不同类型的对象取得相应的值(需要传入formname)
function ajaxaddpars_formInput(formname,argname,pars,target_id) ... {
var target_obj = $(target_id);
if(target_obj)...{
var inputType = target_obj.type;
if(inputType)...{
switch(inputType)...{
case "text":
pars = ajaxaddpars_formtext(argname,pars,target_id);
break;
case "select":
pars = ajaxaddpars_formselect(argname,pars,target_id);
break;
case "checkbox":
pars = ajaxaddpars_formcheckbox(argname,pars,target_id);
break;
case "radio":
var targetname = target_obj.name;
pars = ajaxaddpars_formradio(formname,argname,pars,targetname);
break;
default:
pars = ajaxaddpars_formtext(argname,pars,target_id);
break;
}
}else...{
pars = ajaxaddpars_formtext(argname,pars,target_id);
}
}
return pars;
}
// --------------------------------------------------------------------------
// 添加文本框(text/textarea)
function ajaxaddpars_formtext(argname,pars,target_id) ... {
if($(target_id))...{
if(pars!="") pars += "&";
pars += argname + "=" + mycommonfilt(encodeURI($F(target_id)));
}
return pars;
}
// 添加下拉菜单(select)(支持多选)
function ajaxaddpars_formselect(argname,pars,target_id) ... {
var target_obj = $(target_id);
if(target_obj)...{
for(var i = 0; i < target_obj.options.length; i++)...{
if(target_obj.options[i].selected)...{
if(pars!="") pars += "&";
pars += argname + "=" + mycommonfilt(encodeURI(target_obj.options[i].value));
}
}
}
return pars;
}
// 添加多选框(checkbox)
function ajaxaddpars_formcheckbox(argname,pars,target_id) ... {
if($(target_id) && $(target_id).checked)...{
if(pars!="") pars += "&";
pars += argname + "=" + mycommonfilt(encodeURI($F(target_id)));
}
return pars;
}
// 添加单选框(radio)(必须传入form name)
function ajaxaddpars_formradio(formname,argname,pars,target_name) ... {
var form_obj = $(formname);
if(form_obj)...{
for(var i = 0; i < form_obj.elements.length; i++)...{
if(form_obj.elements[i].name == target_name && form_obj.elements[i].checked)...{
if(pars!="") pars += "&";
pars += argname + "=" + mycommonfilt(encodeURI(form_obj.elements[i].value));
break; //找到一个后退出循环
}
}
}
return pars;
}
// --------------------------------------------------------------------------
// 添加脚本变量的值
function ajaxaddpars_var(argname,pars,var_value) ... {
if(var_value!=null && var_value!="")...{
if(pars!="") pars += "&";
pars += argname + "=" + mycommonfilt(encodeURI(var_value));
}
return pars;
}
// 添加其他标签(div/span ...)
function ajaxaddpars_innerHTML(argname,pars,target_id) ... {
if($(target_id))...{
if(pars!="") pars += "&";
pars += argname + "=" + mycommonfilt(encodeURI($(target_id).innerHTML));
}
return pars;
}
// 通用过滤函数
function mycommonfilt(str) ... {
str = str.replace(/?/g,"%3f");
str = str.replace(/&/g,"%26");
str = str.replace(/#/g,"%23");
str = str.replace(/=/g,"%3d");
// str = str.replace(/</g,"<");
// str = str.replace(/>/g,">");
return str;
}
// ===============================================================================================
// ajax 添加参数专用 end
// ===============================================================================================
//
JavaScript Document
// ==============================================================================
/**/ /* 通用校验脚本
建档时间:2007-4-30
最后修改时间:2007-4-30
作者:ison
说明:(校验相关的都有check_前缀)
check_isnum 检查是否为数字
第一个参数是要检验的字符
第二个参数为错误信息的DOM容器(可选),如果没有,则使用弹出提示
建议:
以下函数一般不要作任何修改
*/ // ============================================================================
function check_isnum(i,mess_spanid) ... {
var errorflag = (i=="" || isNaN(i)==true);
if(errorflag)...{
if(mess_spanid!=null && $(mess_spanid))...{
$(mess_spanid).innerHTML = "请输入数字";
}else...{
alert("请输入数字");
}
}
return !errorflag;
}
// ==============================================================================
/**/ /* 通用校验脚本
建档时间:2007-4-30
最后修改时间:2007-4-30
作者:ison
说明:(校验相关的都有check_前缀)
check_isnum 检查是否为数字
第一个参数是要检验的字符
第二个参数为错误信息的DOM容器(可选),如果没有,则使用弹出提示
建议:
以下函数一般不要作任何修改
*/ // ============================================================================
function check_isnum(i,mess_spanid) ... {
var errorflag = (i=="" || isNaN(i)==true);
if(errorflag)...{
if(mess_spanid!=null && $(mess_spanid))...{
$(mess_spanid).innerHTML = "请输入数字";
}else...{
alert("请输入数字");
}
}
return !errorflag;
}
//
JavaScript Document
function fvoid() ... {} // 通用空脚本(例:<a href="javascript:fvoid();" οnclick="">保存</a>)
// ==============================================================================
/**/ /* 仿造prototype.js的$()函数(兼容firfox)
建档时间:2007-4-24
最后修改时间:2007-4-24
作者:ison
说明:
1.$()函数根据ID返回相同ID的第一个元素;
2.$F()函数根据ID返回相同ID的第一个元素的值(尚在完善中);
$F()加入第二个参数,用于设置该元素的新值
建议:
1.在同一页内所有元素ID必须唯一,否则不能准确取值;
*/ // ============================================================================
/**/ /*function $(id){
return document.getElementById(id);
}
function $F(id,newvalue){
var obj = $(id);
if(obj){
if(obj.type){
switch(obj.type){
case "select":
if(newvalue!=null){
obj.value = newvalue;
}else{
return obj.value;
}
break;
case "checkbox":
if(newvalue!=null){
obj.value = newvalue;
}else{
return obj.value;
}
break;
case "radio":
if(newvalue!=null){
obj.value = newvalue;
}else{
return obj.value;
}
break;
default:
if(newvalue!=null){
obj.value = newvalue;
}else{
return obj.value;
}
break;
}
}else if(obj.value){
if(newvalue!=null){
obj.value = newvalue;
}else{
return obj.value;
}
}else if(obj.innerHTML){
if(newvalue!=null){
obj.innerHTML = newvalue;
}else{
return obj.innerHTML;
}
}
}
return null;
}
*/
// ==============================================================================
/**/ /* 修改状态栏内容
建档时间:2007-4-30
最后修改时间:2007-4-30
作者:ison
说明:直接传入要显示的内容
注意:firefox下默认不支持修改状态栏信息,需要打开firefox的安全设置
*/ // ============================================================================
function setStatusBar(msgStr) ... { window.status = msgStr; }
// ==============================================================================
/**/ /* 修改下拉菜单选项通用函数
建档时间:2007-4-30
最后修改时间:2007-4-30
作者:ison
说明:
1.select_reset_option(obj) 清除指定select对象的所有options
1.select_add_option(obj) 向指定select对象中添加一个option
1.select_setselected(obj,idx) 设置指定select对象的选择项,传入要选择的项的索引
*/ // ============================================================================
function select_add_option(obj,name,val) ... {
obj.options[obj.options.length] = new Option(name,val);
}
function select_reset_option(obj) ... {
obj.options.length = 0;
}
function select_setselected(obj,idx) ... {
obj.selectedIndex = idx;
}
// ==============================================================================
/**/ /* 通用Flash显示脚本(兼容firfox)
建档时间:2007-4-27
最后修改时间:2007-4-27
作者:ison
注意事项:
1.显示的Flash是透明底;
2.pars--用来传参数到Flash中,如果没有参数,页面调用可以忽略不传,前3个参数必填
*/ // ==============================================================================
function Display_flash(width,height,url,pars) ... {
document.write('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0"');
document.write(' width="'+width+'" height="'+height+'">');
document.write('<param name="movie" value="'+url+'" />');
document.write('<param name="quality" value="high" />');
document.write('<param name="wmode" value="transparent" />');
if(pars!="")...{
document.write('<param name="FlashVars" value="'+pars+'" />');
}
document.write('<embed src="'+url+'" quality="high" wmode="transparent" FlashVars="'+pars+'" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash"');
document.write(' width="'+width+'" height="'+height+'"></embed>');
document.write('</object>');
return;
}
// ==============================================================================
/**/ /* key转换
建档时间:2007-4-27
最后修改时间:2007-4-27
作者:ison
注意事项:
1.回车变Tab(不能输入空格的)
2.用于连续输入框中自动焦点
*/ // ==============================================================================
function onKeyEntToTab9(event) ... {
if (event.keyCode==32)...{
event.returnValue = false;
}else if(event.keyCode==13)...{
event.keyCode=9;
}
}
// ==============================================================================
/**/ /* 改变图片的尺寸 还原本来尺寸
建档时间:2007-5-5
最后修改时间:2007-5-5
作者:ison
注意事项:
1.传入一个图片对象
*/ // ==============================================================================
function changeimg_reset(R_img) ... {
var zeimage = new Image();
zeimage.src = R_img.src;
if(zeimage.width > 0 && zeimage.height > 0)...{
R_img.width = zeimage.width;
R_img.height = zeimage.height;
}
}
// ==============================================================================
/**/ /* 改变图片的尺寸 自动缩放
建档时间:2007-5-5
最后修改时间:2007-5-5
作者:ison
注意事项:
1.传入一个图片对象,传入需要的尺寸
*/ // ==============================================================================
function changeimg_wh(R_img,iwidth,iheight) ... {
var zeimage = new Image();
zeimage.src = R_img.src;
if(zeimage.width > 0 && zeimage.height > 0)...{
if(zeimage.width/zeimage.height >= iwidth/iheight)...{ //横向摆放
R_img.width = iwidth;
R_img.height = (zeimage.height*iwidth)/zeimage.width;
}else...{ //纵向摆放
R_img.height = iheight;
R_img.width = (zeimage.width*iheight)/zeimage.height;
}
}
}
// ==============================================================================
/**/ /* 改变图片的尺寸 限制最大值
建档时间:2007-5-5
最后修改时间:2007-5-5
作者:ison
注意事项:
1.传入一个图片对象,传入限制的最大尺寸
*/ // ==============================================================================
function changeimg_Maxlimit(R_img,iwidth,iheight) ... {
var zeimage = new Image();
zeimage.src = R_img.src;
if(zeimage.width > iwidth || zeimage.height > iheight)...{
if(zeimage.width/zeimage.height >= iwidth/iheight)...{ //横向摆放
R_img.width = iwidth;
R_img.height = (zeimage.height*iwidth)/zeimage.width;
}else...{ //纵向摆放
R_img.height = iheight;
R_img.width = (zeimage.width*iheight)/zeimage.height;
}
}else...{
changeimg_reset(R_img);
}
}
// ==============================================================================
/**/ /* 兼容大部分浏览器的复制代码
建档时间:2007-5-5
最后修改时间:2007-5-5
作者:ison
说明:直接传入要复制的内容
*/ // ==============================================================================
function copyToClipboard(txt) ... {
if(window.clipboardData)...{
window.clipboardData.clearData();
window.clipboardData.setData("Text", txt);
}else if(navigator.userAgent.indexOf("Opera") != -1)...{
window.location = txt;
}else if(window.netscape)...{
try...{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
}catch (e)...{
alert("您的firefox安全限制限制您进行剪贴板操作,请打开'about:config' 将signed.applets.codebase_principal_support '设置为true'之后重试");
return false;
}
var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
if (!clip)
return;
var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);
if (!trans)
return;
trans.addDataFlavor('text/unicode');
var str = new Object();
var len = new Object();
var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
var copytext = txt;
str.data = copytext;
trans.setTransferData("text/unicode",str,copytext.length*2);
var clipid = Components.interfaces.nsIClipboard;
if (!clip)
return false;
clip.setData(trans,null,clipid.kGlobalClipboard);
}
}
function fvoid() ... {} // 通用空脚本(例:<a href="javascript:fvoid();" οnclick="">保存</a>)
// ==============================================================================
/**/ /* 仿造prototype.js的$()函数(兼容firfox)
建档时间:2007-4-24
最后修改时间:2007-4-24
作者:ison
说明:
1.$()函数根据ID返回相同ID的第一个元素;
2.$F()函数根据ID返回相同ID的第一个元素的值(尚在完善中);
$F()加入第二个参数,用于设置该元素的新值
建议:
1.在同一页内所有元素ID必须唯一,否则不能准确取值;
*/ // ============================================================================
/**/ /*function $(id){
return document.getElementById(id);
}
function $F(id,newvalue){
var obj = $(id);
if(obj){
if(obj.type){
switch(obj.type){
case "select":
if(newvalue!=null){
obj.value = newvalue;
}else{
return obj.value;
}
break;
case "checkbox":
if(newvalue!=null){
obj.value = newvalue;
}else{
return obj.value;
}
break;
case "radio":
if(newvalue!=null){
obj.value = newvalue;
}else{
return obj.value;
}
break;
default:
if(newvalue!=null){
obj.value = newvalue;
}else{
return obj.value;
}
break;
}
}else if(obj.value){
if(newvalue!=null){
obj.value = newvalue;
}else{
return obj.value;
}
}else if(obj.innerHTML){
if(newvalue!=null){
obj.innerHTML = newvalue;
}else{
return obj.innerHTML;
}
}
}
return null;
}
*/
// ==============================================================================
/**/ /* 修改状态栏内容
建档时间:2007-4-30
最后修改时间:2007-4-30
作者:ison
说明:直接传入要显示的内容
注意:firefox下默认不支持修改状态栏信息,需要打开firefox的安全设置
*/ // ============================================================================
function setStatusBar(msgStr) ... { window.status = msgStr; }
// ==============================================================================
/**/ /* 修改下拉菜单选项通用函数
建档时间:2007-4-30
最后修改时间:2007-4-30
作者:ison
说明:
1.select_reset_option(obj) 清除指定select对象的所有options
1.select_add_option(obj) 向指定select对象中添加一个option
1.select_setselected(obj,idx) 设置指定select对象的选择项,传入要选择的项的索引
*/ // ============================================================================
function select_add_option(obj,name,val) ... {
obj.options[obj.options.length] = new Option(name,val);
}
function select_reset_option(obj) ... {
obj.options.length = 0;
}
function select_setselected(obj,idx) ... {
obj.selectedIndex = idx;
}
// ==============================================================================
/**/ /* 通用Flash显示脚本(兼容firfox)
建档时间:2007-4-27
最后修改时间:2007-4-27
作者:ison
注意事项:
1.显示的Flash是透明底;
2.pars--用来传参数到Flash中,如果没有参数,页面调用可以忽略不传,前3个参数必填
*/ // ==============================================================================
function Display_flash(width,height,url,pars) ... {
document.write('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0"');
document.write(' width="'+width+'" height="'+height+'">');
document.write('<param name="movie" value="'+url+'" />');
document.write('<param name="quality" value="high" />');
document.write('<param name="wmode" value="transparent" />');
if(pars!="")...{
document.write('<param name="FlashVars" value="'+pars+'" />');
}
document.write('<embed src="'+url+'" quality="high" wmode="transparent" FlashVars="'+pars+'" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash"');
document.write(' width="'+width+'" height="'+height+'"></embed>');
document.write('</object>');
return;
}
// ==============================================================================
/**/ /* key转换
建档时间:2007-4-27
最后修改时间:2007-4-27
作者:ison
注意事项:
1.回车变Tab(不能输入空格的)
2.用于连续输入框中自动焦点
*/ // ==============================================================================
function onKeyEntToTab9(event) ... {
if (event.keyCode==32)...{
event.returnValue = false;
}else if(event.keyCode==13)...{
event.keyCode=9;
}
}
// ==============================================================================
/**/ /* 改变图片的尺寸 还原本来尺寸
建档时间:2007-5-5
最后修改时间:2007-5-5
作者:ison
注意事项:
1.传入一个图片对象
*/ // ==============================================================================
function changeimg_reset(R_img) ... {
var zeimage = new Image();
zeimage.src = R_img.src;
if(zeimage.width > 0 && zeimage.height > 0)...{
R_img.width = zeimage.width;
R_img.height = zeimage.height;
}
}
// ==============================================================================
/**/ /* 改变图片的尺寸 自动缩放
建档时间:2007-5-5
最后修改时间:2007-5-5
作者:ison
注意事项:
1.传入一个图片对象,传入需要的尺寸
*/ // ==============================================================================
function changeimg_wh(R_img,iwidth,iheight) ... {
var zeimage = new Image();
zeimage.src = R_img.src;
if(zeimage.width > 0 && zeimage.height > 0)...{
if(zeimage.width/zeimage.height >= iwidth/iheight)...{ //横向摆放
R_img.width = iwidth;
R_img.height = (zeimage.height*iwidth)/zeimage.width;
}else...{ //纵向摆放
R_img.height = iheight;
R_img.width = (zeimage.width*iheight)/zeimage.height;
}
}
}
// ==============================================================================
/**/ /* 改变图片的尺寸 限制最大值
建档时间:2007-5-5
最后修改时间:2007-5-5
作者:ison
注意事项:
1.传入一个图片对象,传入限制的最大尺寸
*/ // ==============================================================================
function changeimg_Maxlimit(R_img,iwidth,iheight) ... {
var zeimage = new Image();
zeimage.src = R_img.src;
if(zeimage.width > iwidth || zeimage.height > iheight)...{
if(zeimage.width/zeimage.height >= iwidth/iheight)...{ //横向摆放
R_img.width = iwidth;
R_img.height = (zeimage.height*iwidth)/zeimage.width;
}else...{ //纵向摆放
R_img.height = iheight;
R_img.width = (zeimage.width*iheight)/zeimage.height;
}
}else...{
changeimg_reset(R_img);
}
}
// ==============================================================================
/**/ /* 兼容大部分浏览器的复制代码
建档时间:2007-5-5
最后修改时间:2007-5-5
作者:ison
说明:直接传入要复制的内容
*/ // ==============================================================================
function copyToClipboard(txt) ... {
if(window.clipboardData)...{
window.clipboardData.clearData();
window.clipboardData.setData("Text", txt);
}else if(navigator.userAgent.indexOf("Opera") != -1)...{
window.location = txt;
}else if(window.netscape)...{
try...{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
}catch (e)...{
alert("您的firefox安全限制限制您进行剪贴板操作,请打开'about:config' 将signed.applets.codebase_principal_support '设置为true'之后重试");
return false;
}
var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
if (!clip)
return;
var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);
if (!trans)
return;
trans.addDataFlavor('text/unicode');
var str = new Object();
var len = new Object();
var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
var copytext = txt;
str.data = copytext;
trans.setTransferData("text/unicode",str,copytext.length*2);
var clipid = Components.interfaces.nsIClipboard;
if (!clip)
return false;
clip.setData(trans,null,clipid.kGlobalClipboard);
}
}
//
==============================================================================
/**/ /* 通用左边菜单效果控制脚本(兼容firfox)
建档时间:2007-4-24
最后修改时间:2007-4-24
作者:ison
说明:
1.size--表示父级的个数、num--表示当前选中的父级编号;
2.class:lm_dl--表示没有选中的样色、lm_dl_check--表示选中后的样色(可根据具体自己定义相对应的样色);
3.num_father--表示当前父级编号、num_son--表示当前子级编号
*/ // ==============================================================================
function Show_sidebar_son(father_size,num) ... {
if(father_size>0)...{
for(var i=0; i<father_size; i++)...{
var obj_sun = $("son_"+i);
var obj_father = $("father_"+i);
if(i==num)...{
obj_sun.style.display = "";
obj_father.className = "lm_dl_check";
}else...{
obj_sun.style.display = "none";
obj_father.className = "lm_dl";
}
}
}
}
function Chose_son(obj,num_son,num_father,url) ... {
obj.href = url+"&bigkind_num="+num_father+"&Search_kindnum="+num_son;
}
// ==============================================================================
/**/ /* 通用列表选项选择状态样色控制脚本(兼容firfox)
建档时间:2007-4-16
最后修改时间:2007-4-18
作者:ison
注意事项:
1.必须是table
2.必须相对定义4个class:(.tab_onmouseover鼠标移到元素上的样色) (.tab_onmouseout鼠标移出元素的样色) (.tab_onclick鼠标点击的样色) (.tab_onclick td鼠标点击后td的样色)
如何使用:
<table cellpadding="0" cellspacing="0" border="0" width="98%" id="Table_mingxi_<%=i%>_<%=j%>" οnmοuseοver="mouse_event_changeclass(event)" οnmοuseοut="mouse_event_changeclass(event)" οnclick="Class_onclick(this);" class="tab_onmouseout">
*/ // ==============================================================================
function mouse_event_changeclass(e) ... {
var isIE = (document.all);
var evt = null;
var obj = null;
if(e!=null)...{evt = e;}else...{evt = event;}
if(isIE)...{
obj = evt.srcElement;
//alert (obj.tagName);
if(obj.tagName == "TD")...{
obj = obj.parentElement.parentElement.parentElement;
}else if(obj.tagName == "A" || obj.tagName == "SPAN" || obj.tagName == "IMG" || obj.tagName == "INPUT" || obj.tagName == "P")...{
obj = obj.parentElement.parentElement.parentElement.parentElement;
}
}else...{
obj = evt.originalTarget;
if(obj.tagName == "TD")...{
obj = obj.offsetParent;
}else if(obj.tagName == "A" || obj.tagName == "SPAN" || obj.tagName == "IMG" || obj.tagName == "INPUT" || obj.tagName == "P")...{
obj = obj.offsetParent.offsetParent;
}
}
obj.className = "Default_tabBG tab_on"+evt.type;
}
function Class_onclick(obj) ... {
var objarray = document.getElementsByTagName("TABLE");
for(var i=0;i<objarray.length;i++)...{
if(objarray[i].className == "tab_onclick")...{
objarray[i].className = "tab_onmouseout";
objarray[i].onmouseout = mouse_event_changeclass;
objarray[i].onmouseover = mouse_event_changeclass;
}
}
obj.onmouseout = "";
obj.onmouseover = "";
obj.className = "tab_onclick";
}
// ==============================================================================
/**/ /* 分类编辑脚本
建档时间:2007-05-09
最后修改时间:2007-05-09
作者:ison
注意事项:
1.陆续完善
*/ // ==============================================================================
function Ajax_LMMana_save(lmbh,action) ... {
if(action!="delete" || confirm("真的确认此操作?"))...{
var url = "../product/product_kind.jsp";
var pars = "";
pars = ajaxaddpars_var("pact",pars,action);
pars = ajaxaddpars_formtext("knum",pars,"lnum_"+lmbh);
pars = ajaxaddpars_formtext("kind_mc",pars,"mc_"+lmbh);
pars = ajaxaddpars_formtext("fnum",pars,"fnum_"+lmbh);
pars = ajaxaddpars_formtext("level",pars,"level_"+lmbh);
pars = ajaxaddpars_formtext("shownum",pars,"shownum_"+lmbh);
pars = ajaxaddpars_formtext("state",pars,"state_"+lmbh);
mynormalAjax(url,pars,"Ajax_noreturn_div");
}
}
function LMMana_Open_menu(lmbh) ... {
var Open_Close = $("OpenClose_lmsub_"+lmbh);
if(Element.visible("Lm_sub_"+lmbh))...{
Open_Close.innerHTML = "展 开";
$("Lm_sub_"+lmbh).hide();
}else...{
Open_Close.innerHTML = "折 叠";
$("Lm_sub_"+lmbh).show();
}
}
/**/ /* 通用左边菜单效果控制脚本(兼容firfox)
建档时间:2007-4-24
最后修改时间:2007-4-24
作者:ison
说明:
1.size--表示父级的个数、num--表示当前选中的父级编号;
2.class:lm_dl--表示没有选中的样色、lm_dl_check--表示选中后的样色(可根据具体自己定义相对应的样色);
3.num_father--表示当前父级编号、num_son--表示当前子级编号
*/ // ==============================================================================
function Show_sidebar_son(father_size,num) ... {
if(father_size>0)...{
for(var i=0; i<father_size; i++)...{
var obj_sun = $("son_"+i);
var obj_father = $("father_"+i);
if(i==num)...{
obj_sun.style.display = "";
obj_father.className = "lm_dl_check";
}else...{
obj_sun.style.display = "none";
obj_father.className = "lm_dl";
}
}
}
}
function Chose_son(obj,num_son,num_father,url) ... {
obj.href = url+"&bigkind_num="+num_father+"&Search_kindnum="+num_son;
}
// ==============================================================================
/**/ /* 通用列表选项选择状态样色控制脚本(兼容firfox)
建档时间:2007-4-16
最后修改时间:2007-4-18
作者:ison
注意事项:
1.必须是table
2.必须相对定义4个class:(.tab_onmouseover鼠标移到元素上的样色) (.tab_onmouseout鼠标移出元素的样色) (.tab_onclick鼠标点击的样色) (.tab_onclick td鼠标点击后td的样色)
如何使用:
<table cellpadding="0" cellspacing="0" border="0" width="98%" id="Table_mingxi_<%=i%>_<%=j%>" οnmοuseοver="mouse_event_changeclass(event)" οnmοuseοut="mouse_event_changeclass(event)" οnclick="Class_onclick(this);" class="tab_onmouseout">
*/ // ==============================================================================
function mouse_event_changeclass(e) ... {
var isIE = (document.all);
var evt = null;
var obj = null;
if(e!=null)...{evt = e;}else...{evt = event;}
if(isIE)...{
obj = evt.srcElement;
//alert (obj.tagName);
if(obj.tagName == "TD")...{
obj = obj.parentElement.parentElement.parentElement;
}else if(obj.tagName == "A" || obj.tagName == "SPAN" || obj.tagName == "IMG" || obj.tagName == "INPUT" || obj.tagName == "P")...{
obj = obj.parentElement.parentElement.parentElement.parentElement;
}
}else...{
obj = evt.originalTarget;
if(obj.tagName == "TD")...{
obj = obj.offsetParent;
}else if(obj.tagName == "A" || obj.tagName == "SPAN" || obj.tagName == "IMG" || obj.tagName == "INPUT" || obj.tagName == "P")...{
obj = obj.offsetParent.offsetParent;
}
}
obj.className = "Default_tabBG tab_on"+evt.type;
}
function Class_onclick(obj) ... {
var objarray = document.getElementsByTagName("TABLE");
for(var i=0;i<objarray.length;i++)...{
if(objarray[i].className == "tab_onclick")...{
objarray[i].className = "tab_onmouseout";
objarray[i].onmouseout = mouse_event_changeclass;
objarray[i].onmouseover = mouse_event_changeclass;
}
}
obj.onmouseout = "";
obj.onmouseover = "";
obj.className = "tab_onclick";
}
// ==============================================================================
/**/ /* 分类编辑脚本
建档时间:2007-05-09
最后修改时间:2007-05-09
作者:ison
注意事项:
1.陆续完善
*/ // ==============================================================================
function Ajax_LMMana_save(lmbh,action) ... {
if(action!="delete" || confirm("真的确认此操作?"))...{
var url = "../product/product_kind.jsp";
var pars = "";
pars = ajaxaddpars_var("pact",pars,action);
pars = ajaxaddpars_formtext("knum",pars,"lnum_"+lmbh);
pars = ajaxaddpars_formtext("kind_mc",pars,"mc_"+lmbh);
pars = ajaxaddpars_formtext("fnum",pars,"fnum_"+lmbh);
pars = ajaxaddpars_formtext("level",pars,"level_"+lmbh);
pars = ajaxaddpars_formtext("shownum",pars,"shownum_"+lmbh);
pars = ajaxaddpars_formtext("state",pars,"state_"+lmbh);
mynormalAjax(url,pars,"Ajax_noreturn_div");
}
}
function LMMana_Open_menu(lmbh) ... {
var Open_Close = $("OpenClose_lmsub_"+lmbh);
if(Element.visible("Lm_sub_"+lmbh))...{
Open_Close.innerHTML = "展 开";
$("Lm_sub_"+lmbh).hide();
}else...{
Open_Close.innerHTML = "折 叠";
$("Lm_sub_"+lmbh).show();
}
}
打包附上http://download1.csdn.net/down3/20070523/23075721914.rar