📄 projectout.js
字号:
function xalt_set_mouse_follow(mouse_follow){//true or false
cfg_mouse_follow=mouse_follow;
}
function xalt_set_fade_switch(fade_switch){//true or false
cfg_fade_switch=fade_switch;
if(!cfg_fade_switch)XALT.ieop=100;
}
function xalt_get_window_dims(){
XALT.w_y=(XALT.ie5||XALT.ie4)?document.body.clientHeight:window.innerHeight;
XALT.w_x=(XALT.ie5||XALT.ie4)?document.body.clientWidth:window.innerWidth;
}
function xalt_get_box_width(){
if(XALT.ns4)XALT.boxwidth=(XALT.navtxt.document.width)? XALT.navtxt.document.width : XALT.navtxt.clip.width;
else if(XALT.ie4)XALT.boxwidth=(XALT.navtxt.style.pixelWidth)? XALT.navtxt.style.pixelWidth : XALT.navtxt.offsetWidth;
else XALT.boxwidth=(XALT.navtxt.style.width)? parseInt(XALT.navtxt.style.width) : parseInt(XALT.navtxt.offsetWidth);
}
function xalt_get_box_height(){
if(XALT.ns4)XALT.boxheight=(XALT.navtxt.document.height)? XALT.navtxt.document.height : XALT.navtxt.clip.height;
else if(XALT.ie4)XALT.boxheight=(XALT.navtxt.style.pixelHeight)? XALT.navtxt.style.pixelHeight : XALT.navtxt.offsetHeight;
else XALT.boxheight=parseInt(XALT.navtxt.offsetHeight);
}
function xalt_move_nav_txt(x,y){
if(XALT.ns4){
XALT.navtxt.moveTo(x,y);
}else{
XALT.navtxt.style.left=x+'px';
XALT.navtxt.style.top=y+'px';
}
}
function xalt_get_page_scrolly(){
if(XALT.ie5||XALT.ie4){
if(document.documentElement.scrollTop > 0) return document.documentElement.scrollTop;
return document.body.scrollTop;
}else return window.pageYOffset;
}
function xalt_get_page_scrollx(){
if(XALT.ie5||XALT.ie4){
if(document.documentElement.scrollLeft > 0) return document.documentElement.scrollLeft;
return document.body.scrollLeft;
}else return window.pageXOffset;
}
function xalt_write_in_div(text){
if(XALT.ns4){
XALT.navtxt.document.open();
XALT.navtxt.document.write(text);
XALT.navtxt.document.close();
}
else XALT.navtxt.innerHTML=text;
}
function xalt_write_txt(text){
if(cfg_fade_switch && (XALT.ie4||XALT.w3c))clearInterval(XALT.op_id);
if(text!=0 && cfg_is_show ){
if(!cfg_mouse_follow)clearTimeout(XALT.dy);
XALT.oktomove=true;
XALT.ishover=true;
if(XALT.ns4)text='<div class="navtext_div">'+text+''+'</div>';
if(XALT.w3c||XALT.ie4)XALT.navtxt.style.textAlign="left";
xalt_write_in_div(text);
if(XALT.ns4)XALT.navtxt.visibility="show";
else{
//XALT.navtxt.style.display="inline";
XALT.navtxt.style.visibility="visible";
}
xalt_get_box_height();
if((XALT.w3c||XALT.ie4) && cfg_fade_switch){
if(XALT.ie4||XALT.ie5)XALT.navtxt.style.filter="alpha(opacity=0)";
if(XALT.ns6)XALT.navtxt.style.MozOpacity=0;
XALT.ieop=0;
XALT.op_id=setInterval('xalt_do_opacity()',10);
}
cfg_is_show=false;
}else{
cfg_is_show=true;
if(cfg_mouse_follow)xalt_hide_alt_txt();
else XALT.dy=setTimeout('xalt_hide_alt_txt()',cfg_hide_delay);
}
}
function xalt_hide_alt_txt(){
if(XALT.ns4)XALT.navtxt.visibility="hide";
else{
//XALT.navtxt.style.display="none";
XALT.navtxt.style.visibility="hidden";
}
xalt_move_nav_txt(-XALT.boxwidth-10,0);
xalt_write_in_div('');
}
function xalt_do_opacity(){
if(XALT.ieop<=100){
XALT.ieop+=32;
if(XALT.ie4||XALT.ie5)XALT.navtxt.style.filter="alpha(opacity="+XALT.ieop+")";
if(XALT.ns6)XALT.navtxt.style.MozOpacity=XALT.ieop/100;
}else clearInterval(XALT.op_id);
}
function xalt_move_obj(evt){
mx=(XALT.ie5||XALT.ie4)?event.clientX:evt.pageX;
my=(XALT.ie5||XALT.ie4)?event.clientY:evt.pageY;
if(XALT.ishover && XALT.oktomove){
margin=(XALT.ie4||XALT.ie5)?5:25;
if(XALT.ns6)if(document.height+27-window.innerHeight<0)margin=15;
if(XALT.ns4)if(document.height-window.innerHeight<0)margin=10;
if(XALT.ns4||XALT.ns6)mx-=xalt_get_page_scrollx();
if(XALT.ns4)my-=xalt_get_page_scrolly();
xoff=mx+cfg_xoffset;
yoff=(my+XALT.boxheight+cfg_yoffset-((XALT.ns6)?xalt_get_page_scrolly():0)>=XALT.w_y)? -5-XALT.boxheight-cfg_yoffset: cfg_yoffset;
xalt_move_nav_txt( Math.min(XALT.w_x-XALT.boxwidth-margin , Math.max(2,xoff))+xalt_get_page_scrollx(), my+yoff+((!XALT.ns6)?xalt_get_page_scrolly():0));
if(!cfg_mouse_follow)XALT.oktomove=false;
}
}
function scanDOM(curNode) {
while(curNode ) {
if(curNode.nodeType == 1){
var txt = curNode.getAttribute(cfg_txt_tag);
if (curNode.alt) curNode.alt = "";
if (curNode.title) curNode.title = "";
if(txt != null && txt != ''){
curNode.setAttribute('xalt_txt', txt);
curNode.setAttribute(cfg_txt_tag, '');
curNode.onmouseover = function() {
xalt_write_txt(this.getAttribute('xalt_txt'));
if(!cfg_mouse_follow)XALT.dy=setTimeout('xalt_hide_alt_txt()',cfg_hide_delay);
}
curNode.onmouseout = function() {
xalt_write_txt(0);
if(!cfg_mouse_follow)clearTimeout(XALT.dy);
}
}
}
scanDOM(curNode.firstChild);
curNode=curNode.nextSibling;
}
}
function xalt_onload(){
window.onerror = xalt_kill_errors;
if (!(XALT.w3c || XALT.ns4 || XALT.ie4 || XALT.ie5 || XALT.ns6)) return;
if(XALT.ns4||XALT.ns6){
window.document.captureEvents(Event.MOUSEMOVE);
window.document.addEventListener("mousemove", xalt_move_obj, true);
window.document.addEventListener("resize", xalt_get_window_dims, true);
}else if(XALT.ie4||XALT.ie5||XALT.w3c){
window.document.attachEvent("onmousemove", xalt_move_obj);
window.document.attachEvent("onresize", xalt_get_window_dims);
}
XALT.navtxt=(XALT.ns4)?document.layers['navtext_div']:(XALT.ie4)?document.all['navtext_div']:(XALT.w3c)?document.getElementById('navtext_div'):null;
xalt_get_box_width();
xalt_get_box_height();
xalt_get_window_dims();
if(XALT.ie4||XALT.ie5&&cfg_fade_switch)XALT.navtxt.style.filter="alpha(opacity=100)";
scanDOM(document.body);
}
if(XALT.ns4||XALT.ns6){
window.addEventListener("load", xalt_onload, true);
}else if(XALT.ie4||XALT.ie5||XALT.w3c){
window.attachEvent("onload", xalt_onload);
}
/*
autocheck 2.0
*/
//form check
var first_error = "";
var check_error = '提示信息:';
var check_alt = '';
var check_alt_count = 1;
var alert_num = 6;
function autocheck(fm){
check_alt_count = 1;
check_alt = '';
var check_rule = new Array();
check_rule['email'] = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
check_rule['number'] = /^\d+$/;
check_rule['url'] = /^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/;
check_rule['tel'] = /^((\(\d{2,3}\))|(\d{3}[\-]{0,1}))?(\(0\d{2,3}\)|0\d{2,3}[\-]{0,1})?[1-9]\d{6,7}([\-]{0,1}\d{1,4})?$/;
check_rule['mobile'] = /^((\(\d{3}\))|(\d{3}\-))?(13|15)\d{9}$/;
check_rule['domain'] = /^[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/;
check_rule['idcard'] = /^\d{15}(\d{2}[A-Za-z0-9])?$/;
check_rule['money'] = /^\d+(\.\d+)?$/;
check_rule['zip'] = /^[0-9]\d{5,6}$/;
check_rule['oicq'] = /^[0-9]\d{4,10}$/;
check_rule['int'] = /^[-\+]?\d+$/;
check_rule['double'] = /^[-\+]?\d+(\.\d+)?$/;
check_rule['english'] = /^[A-Za-z0-9\. ]+$/;
check_rule['chinese'] = /^[\u0391-\uFFE5]+$/;
check_rule['username'] = /^[a-z]\w{3,32}$/i;
check_rule['password'] = /^[A-Za-z0-9]\w{3,32}$/;
check_rule['char'] = /^[A-Za-z0-9_\-]+$/;
for(var i = 0; i < fm.elements.length; i++){
with(fm.elements[i]){
var form_item = fm.elements[i];
var label_model = form_item.getAttribute('model');
var msg = form_item.getAttribute('msg');
var area = form_item.getAttribute('area');//form_item.getAttribute('area');22-33
var area_max = 0;
var area_min = 0;
if(new RegExp("^[0-9\-\.]{1,}$","g").test(area)){
var tmp = area.match(new RegExp("^([0-9\.]*)[-]{0,1}([0-9\.]*)$"));
area_min = parseFloat(tmp[1]);
area_max = parseFloat(tmp[2]);
if((form_item.type != 'checkbox' && form_item.type != 'multiple') && (area_max < form_item.value && area_max != 0 && area_max != 'NaN') || (area_min > form_item.value && area_min != 0 && area_min != 'NaN')) {
add_error(form_item.name, msg);
continue;
}
}
//var len = form_item.getAttribute('len');
// ulen Unicode 长度
var ulen = form_item.getAttribute('ulen');
if(typeof(ulen) == "string")len=ulen;
else len = form_item.getAttribute('len');
var len_max = 0;
var len_min = 0;
if(new RegExp("^[0-9\-]{1,}$","g").test(len)){
var tmp = len.match(new RegExp("^([0-9]*)[-]{0,1}([0-9]*)$"));
len_min = parseInt(tmp[1]);
len_max = parseInt(tmp[2]);
if(len_min == 0 && form_item.value == ''){
continue;
}
test_len = (typeof(ulen) == "string") ? form_item.value.length : strlen(form_item.value);
if((len_max < test_len && len_max != 0 && len_max != 'NaN') || (len_min > test_len && len_min != 0 && len_min != 'NaN')){
add_error(form_item.name, msg);
continue;
}
}
var to = form_item.getAttribute('to');
if(typeof(label_model) != "string") continue;
switch(label_model){
case 'repeat':
if(to != null)
if(fm.elements[to].value != form_item.value)
add_error(form_item.name, msg);
break;
case 'define':
var rule = form_item.getAttribute('rule');
if(!new RegExp(rule,"g").test(form_item.value))
add_error(form_item.name, msg);
break;
case 'select':
var check_label = document.getElementsByName(form_item.name);
var checked_count = 0;
for(var j = check_label.length - 1; j >= 0; j--){
if(check_label[j].selected || check_label[j].value != '') checked_count = 1;
}
if(checked_count == 0)
add_error(form_item.name, msg);
break;
case 'multiple':
var check_label = document.getElementsByName(form_item.name);
var checked_count = 0;
for(var j = check_label.length - 1; j >= 0; j--)
if(check_label[j].selected) checked_count++;
if(checked_count > area_max || checked_count < area_min)
add_error(form_item.name, msg);
break;
case 'radio':
var check_label = document.getElementsByName(form_item.name);
var checked_count = 0;
for(var j = check_label.length - 1; j >= 0; j--)
if(check_label[j].checked) checked_count = 1;
if(checked_count == 0)
add_error(form_item.name, msg);
break;
case 'checkbox':
var check_label = document.getElementsByName(form_item.name);
var checked_count = 0;
for(var j = check_label.length - 1; j >= 0; j--)
if(check_label[j].checked) checked_count++;
if(checked_count > area_max || checked_count < area_min)
add_error(form_item.name, msg);
break;
case 'y-m-d h:i:s':
var tmp = form_item.value.match(new RegExp("^([0-9]{4})[-./]{1}([0-9]{1,2})[-./]{1}([0-9]{1,2})[ ]{1}([0-9]{2})[:]{1}([0-9]{1,2})[:]{1}([0-9]{1,2})$"));
if(tmp != null ) {//year-month-day tmp[1]-tmp[2]-tmp[3]
if(!check_date(tmp[1], tmp[2], tmp[3]) || !check_time(tmp[4], tmp[5], tmp[6])) {
add_error(form_item.name, msg);
}
}else {
add_error(form_item.name, msg);
}
break;
case 'h:i:s':
var tmp = form_item.value.match(new RegExp("^([0-9]{2})[:]{1}([0-9]{1,2})[:]{1}([0-9]{1,2})$"));
if(tmp != null ) {//year-month-day tmp[1]-tmp[2]-tmp[3]
if(!check_time(tmp[1], tmp[2], tmp[3])) {
add_error(form_item.name, msg);
}
}else {
add_error(form_item.name, msg);
}
break;
case 'y-m-d':
var tmp = form_item.value.match(new RegExp("^([0-9]{4})[-./]{1}([0-9]{1,2})[-./]{1}([0-9]{1,2})$"));
if(tmp != null ) {//year-month-day tmp[1]-tmp[2]-tmp[3]
if(!check_date(tmp[1], tmp[2], tmp[3])) {
add_error(form_item.name, msg);
}
}else {
add_error(form_item.name, msg);
}
break;
default:
if(!check_rule[label_model] || check_rule[label_model] == 'undefined') {
continue ;
}else{
if(!check_rule[label_model].test(form_item.value)){
add_error(form_item.name, msg);
}
}
break;
}
}
}
if(check_alt.length < 4) {
for(var i = 0; i < fm.elements.length; i++){
with(fm.elements[i]){
if(fm.elements[i].type=='button' || fm.elements[i].type=='submit')
fm.elements[i].disabled = true;
}}
return true;
}
alert(check_error + '\r\n' + check_alt);
if(fm.elements[first_error].type != 'undefined' && fm.elements[first_error].type){
fm.elements[first_error].focus();
}
first_error = "";
return false;
}
function add_error(label, err){
if(check_alt_count <= alert_num){
check_alt += (check_alt_count + '.' + err + '\r\n');
check_alt_count++;
if(first_error.length < 1)
first_error = label;
}
}
function check_date(y, m, d){
if((y <= 0) || (m > 12 || m < 1) || (d > 31 || d < 1)) return false;
return true;
}
function check_time(h, i, s){
if((h > 23 || h < 1) || (i > 59 || i < 1) || (s > 59 || s < 1)) return false;
return true;
}
function strlen(s){
var i,str1,str2,str3,nLen;
str1 = s;
nLen = 0;
for(i=1;i<=str1.length;i++){
str2=str1.substring(i-1,i)
str3=escape(str2);
if(str3.length>3){
nLen = nLen + 2;
}else{
nLen = nLen + 1;
}
}
return nLen;
}
function set_rule(form_name, label_name, rule_str){
var model = get_rule('model', rule_str);
var msg = get_rule('msg', rule_str);
var area = get_rule('area', rule_str);
var len = get_rule('len', rule_str);
var to = get_rule('to', rule_str);
var rule = get_rule('rule', rule_str);
if(document.forms[form_name] && document.forms[form_name][label_name]){
var obj = document.forms[form_name][label_name];
if(model) obj.setAttribute('model', model);
if(msg) obj.setAttribute('msg', msg);
if(area) obj.setAttribute('area', area);
if(len) obj.setAttribute('len', len);
if(to) obj.setAttribute('to', to);
if(rule) obj.setAttribute('rule', rule);
}else{
alert( "document.forms[" + form_name + "][" + label_name + "] no defined!");
}
}
function get_rule(attrib, rule_str){
var preg = attrib + '=["|\']{1}([^"\']*)["|\']{1}';
if(new RegExp(preg,"g").test(rule_str)){
var tmp = rule_str.match(new RegExp(preg));
return tmp[1];
}else{
return false;
}
}
function popup(url,width,height)
{
var popup = window.open(url, '_blank', 'width='+width+',height='+height+',scrollbars=yes,resizable=yes,status=yes');
if (!popup.opener) popup.opener = self;
popup.focus();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -