⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 css.lib.js

📁 asp的bbs程序
💻 JS
字号:
/*
  By Hangring
  #2007.12.20#
  ---
  use list:
  > global.lib.js
  > node.lib.js
  > browser.lib.js
  ---
  动态修改样式类
  -
  在IE5.5中,对于CSS类名大小写不敏感
*/

$Defined('CSS');
var CSS = {LEFT:'left',RIGHT:'right',BOTH:'both'};

CSS.GetRe = function (c) {
    return new RegExp('^\\s*' + c + '\\s+|\\s+' + c + '\\s*$|\\s+' + c + '\\s+|^\\s*' + c + '\\s*$', '');
};

CSS.AddClass = function (el /* :HTMLElement */ /*, class1, class2, ..., classN */) {
    if (! oNode.IsNode(el)) return;
    var list = arguments;

    for (var i = 1, len = list.length; i < len; i++) {
        var c = list[i];
        if (typeof c != 'string' || c == '') continue;

        var re = this.GetRe(c);
        if (!re.test(el.className)) {
            el.className += ((el.className ? '\x20' : '') + c).replace(/\s{2,}/g, '\x20');
        }
    }
};

CSS.RemoveClass = function (el /* :HTMLElement */ /*, class1, class2, ..., classN */) {
    if (! oNode.IsNode(el)) return;
    var list = arguments;

    for (var i = 1, len = list.length; i < len; i++) {
        var c = list[i];
        if (typeof c != 'string' || c == '') continue;

        var re = this.GetRe(c);
        if (re.test(el.className)) {
            el.className = el.className.replace(re, '\x20').replace(/^\s{2,}$/, '\x20');
        }
    }
};

CSS.ReplaceClass = function (el /* :HTMLElement */, replaced /* :String */, replacing /* :String */) {
    this.RemoveClass(el, replaced);
    this.AddClass(el, replacing);
};

CSS.HasClass = function (el /* :HTMLElement */, c /* :String */) {
    if (! oNode.IsNode(el)) return false;
    if (typeof c != 'string' || c == '') return false;
    return this.GetRe(c).test(el.className);
};

// 设置样式
//CSS.SetStyle = function (el, sname, svalue) {
//    el.style[sname] = svalue;
//};

/*
  ie 5.5出现[库没有注册]错误
*/
CSS.SetAlpha = function (el /* :HTMLElement */, opacity /* 0 -> 100:Number */) {
    if (Browser.IsIE) {
        try {
            el.filters[0].Opacity = opacity;
        }
        catch (e) {
            el.style.filter = 'alpha(Opacity=' + opacity + ')';
        }
    }
    else {
        el.style.MozOpacity = opacity / 100;
        el.style.opacity = opacity / 100;
    }
};

CSS.GetAlpha = function (el /* :HTMLElement */) {
    if (Browser.IsIE) {
        try {
            return el.filters[0].Opacity;
        }
        catch (e) {
            return 100;
        }
    }
    else {
        return el.style.opacity * 100;
    }
};

// 设置是否显示
// 对于<thead>, <tbody>, <tr>或<td>尽量用''替代'block'以免出现问题
CSS.SetDisplay = function (el /* :HTMLElement */, display /* :Boolean */, unset /* 未在style或样式里设置的(用此参数,请先看以上说明):Boolean */) {
    el.style.display = !!display ? (unset ? 'block' : '') : 'none';
};

// 设置是否显示
CSS.SetVisible = function (el /* :HTMLElement */, visible /* :Boolean */) {
    el.style.visibility = !!visible ? 'visible' : 'hidden';
};

// 设置浮动
CSS.SetFloat = function (el /* :HTMLElement */, dir /* CSS.LEFT|CSS.RIGHT:String */) {
    el.style.styleFloat = dir;
    el.style.cssFloat = dir;
};

// 添加清除浮动
CSS.AddClear = function (el /* :HTMLElement */, clear/* CSS.LEFT|CSS.RIGHT|CSS.BOTH:String */) {
    var node = oNode.CreateNode('div');
    oNode.AddNode(node, el);
    node.style.overflow = 'hidden';
    node.style.clear = clear;
    return node;
};

// 选择开关
CSS.SelectOn = function (doc) {
    doc = doc || document;
    //doc.body.unselectable = 'off';//false;
    doc.body.style.MozUserSelect = '';
    doc.body.style.KhtmlUserSelect = '';
    doc.onselectstart = null;
};
CSS.SelectOff = function (doc) {
    doc = doc || document;
    //doc.body.unselectable = 'on';//true;
    doc.body.style.MozUserSelect = 'none';
    doc.body.style.KhtmlUserSelect = 'none';
    doc.onselectstart = function () {return false};
};

// 添加一个临时背景
// 这可防止鼠标操作页面其他元素
CSS.AddBack = function (el /* :HTMLElement */, insertBefore /* :Boolean */) {
    var BG = oNode.CreateNode('div');
    if (el) el.$BG = BG;
    el && insertBefore ? oNode.InsertBefore(BG, el) : oNode.AddNode(BG);
    with (BG.style) {
        position = 'absolute';
        //zIndex = el ? el.style.zIndex : 1;
        zIndex = 1;
        left = '0px';
        top = '0px';
        background = 'transparent url(' + BBSMAX.SpaceImage + ') repeat 0 0';
    }
    //this.SetAlpha(BG, 15);
    BG.Show = function () {
        this.style.width = Global.GetDocWidth() - (Browser.IsGecko && !Browser.IsSafari ? 18 : 0) + 'px';
        this.style.height = Math.max(Global.GetDocHeight(), Global.GetClientHeight()) + 'px';
        CSS.SetVisible(this, true);
    };
    BG.Hide = function () {
        CSS.SetVisible(this, false);
        with (this.style) {
            width = '1px';
            height = '1px';
        }
    };
    BG.Show();
    return BG;
};

// 增加style节点
CSS.AddStyle = function (cssText /* :String */) {
    var s = oNode.CreateNode('style');
    s.type = 'text/css';
    if (s.styleSheet) {
        s.styleSheet.cssText = cssText;
    }
    else {
        //s.appendChild(document.createTextNode(cssText));
        oNode.AddNode(cssText, s);
    }
    oNode.AddNode(s, document.getElementsByTagName('head')[0]);
    return s;
};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -