pjblog中的UBBCode.js


Posted in Javascript onApril 25, 2007

//|===========================|
//|   UBB编辑器JS代码 1.0     |
//|      作者:舜子(PuterJam)  |
//|   版权所有 2005           |
//|===========================|

var UBBBrowerInfo=new Object();
var sAgent=navigator.userAgent.toLowerCase();
UBBBrowerInfo.IsIE=sAgent.indexOf("msie")!=-1;
UBBBrowerInfo.IsGecko=!UBBBrowerInfo.IsIE;UBBBrowerInfo.IsNetscape=sAgent.indexOf("netscape")!=-1;
if (UBBBrowerInfo.IsIE){
    UBBBrowerInfo.MajorVer=navigator.appVersion.match(/MSIE (.)/)[1];
    UBBBrowerInfo.MinorVer=navigator.appVersion.match(/MSIE .\.(.)/)[1];}
else{
    UBBBrowerInfo.MajorVer=0;UBBBrowerInfo.MinorVer=0;
    };
    UBBBrowerInfo.IsIE55OrMore=UBBBrowerInfo.IsIE&&(UBBBrowerInfo.MajorVer>5||UBBBrowerInfo.MinorVer>=5);

var UBBScriptLoader=new Object();
UBBScriptLoader.IsLoading=false;
UBBScriptLoader.Queue=new Array();
UBBScriptLoader.AddScript=function(scriptPath){
    UBBScriptLoader.Queue[UBBScriptLoader.Queue.length]=scriptPath;
    //if (!this.IsLoading) this.CheckQueue();
    };
UBBScriptLoader.CheckQueue=function(){
    if (this.Queue.length>0){
        this.IsLoading=true;
        var sScriptPath=this.Queue[0];
        var oTempArray=new Array();
        for (i=1;i<this.Queue.length;i++) oTempArray[i-1]=this.Queue[i];
        this.Queue=oTempArray;
        var e;
        if (sScriptPath.lastIndexOf('.css')>0){
             e=document.createElement('LINK');
             e.rel='stylesheet';e.type='text/css';
            }
            else
            {
             e=document.createElement("script");
             e.type="text/javascript";
             e.language="javascript";
            };
            document.getElementsByTagName("head")[0].appendChild(e);
var oEvent=function(){
    if (this.tagName=='LINK'||!this.readyState||this.readyState=='loaded') UBBScriptLoader.CheckQueue();};
    if (e.tagName=='LINK'){
        if (UBBBrowserInfo.IsIE) e.onload=oEvent;else UBBScriptLoader.CheckQueue();
        e.href=sScriptPath;
        }
        else{
        e.onload=e.onreadystatechange=oEvent;e.src=sScriptPath;
        };
    }
    else
    {
        this.IsLoading=false;
        if (this.OnEmpty) this.OnEmpty();};
    }

var EditMethod="normal"
var UBBTextArea

//UBBBrowerInfo.IsIE 判断是否是IE
//UBBBrowerInfo.IsGecko 判断是否是Gecko
//初试化代码

if (UBBBrowerInfo.IsIE){
 UBBScriptLoader.AddScript('common/UBBCode_IE.js')
}

if (UBBBrowerInfo.IsGecko){
 UBBScriptLoader.AddScript('common/UBBCode_Gecko.js')
}
UBBScriptLoader.CheckQueue();

Javascript 相关文章推荐
Javascript 遍历对象中的子对象
Jul 03 Javascript
Javascript 判断是否存在函数的方法
Jan 03 Javascript
jquery模拟SELECT下拉框取值效果
Oct 23 Javascript
js触发onchange事件的方法说明
Mar 08 Javascript
用JavaScript实现PHP的urlencode与urldecode函数
Aug 13 Javascript
Javascript仿新浪游戏频道鼠标悬停显示子菜单效果
Aug 21 Javascript
JavaScript兼容性总结之获取非行间样式案例
Aug 07 Javascript
angularjs使用directive实现分页组件的示例
Feb 07 Javascript
js实现canvas图片与img图片的相互转换的示例
Aug 31 Javascript
小程序云开发获取不到数据库记录的解决方法
May 18 Javascript
Node.js创建一个Express服务的方法详解
Jan 06 Javascript
js实现无限层级树形数据结构(创新算法)
Feb 27 Javascript
用javascript实现的仿Flash广告图片轮换效果
Apr 24 #Javascript
疯掉了,尽然有js写的操作系统
Apr 23 #Javascript
刷新时清空文本框内容的js代码
Apr 23 #Javascript
漂亮的widgets,支持换肤和后期开发新皮肤
Apr 23 #Javascript
IE与FireFox的兼容性问题分析
Apr 22 #Javascript
javascript生成/解析dom的CDATA类型的字段的代码
Apr 22 #Javascript
XML+XSL 与 HTML 两种方案的结合
Apr 22 #Javascript
You might like
php获取网页请求状态程序示例
2014/06/17 PHP
javascript 学习笔记(六)浏览器类型及版本信息检测代码
2011/04/08 Javascript
js 利用className得到对象的实现代码
2011/11/15 Javascript
火狐textarea输入法的bug的触发及解决
2013/07/24 Javascript
JavaScript var声明变量背后的原理示例解析
2013/10/12 Javascript
用javascript添加控件自定义属性解析
2013/11/25 Javascript
JQuery中阻止事件冒泡几种方式及其区别介绍
2014/01/15 Javascript
jQuery判断当前点击的是第几个li的代码
2014/09/26 Javascript
JavaScript中的操作符==与===介绍
2014/12/31 Javascript
JS利用cookie记忆当前位置的防刷新导航效果
2015/10/15 Javascript
EasyUI布局 高度自适应
2016/06/04 Javascript
JS简单获取当前日期时间的方法(如:2017-03-29 11:41:10 星期四)
2017/03/29 Javascript
SpringMVC+bootstrap table实例详解
2017/06/02 Javascript
基于jquery日历价格、库存等设置插件
2020/07/05 jQuery
webpack之devtool详解
2018/02/10 Javascript
详解vue2.0+axios+mock+axios-mock+adapter实现登陆
2018/07/19 Javascript
vue-cli 使用axios的操作方法及整合axios的多种方法
2018/09/12 Javascript
微信小程序如何实现全局重新加载
2019/06/05 Javascript
JavaScript中的this基本问题实例小结
2020/03/09 Javascript
js实现简单选项卡制作
2020/08/05 Javascript
[03:08]Ti4观战指南上
2014/07/07 DOTA
[00:35]可解锁地面特效
2018/12/20 DOTA
Python3模拟curl发送post请求操作示例
2019/05/03 Python
python交易记录整合交易类详解
2019/07/03 Python
python使用装饰器作日志处理的方法
2019/07/11 Python
python将print输出的信息保留到日志文件中
2019/09/27 Python
Python 闭包,函数分隔作用域,nonlocal声明非局部变量操作示例
2019/10/14 Python
python itsdangerous模块的具体使用方法
2020/02/17 Python
Python爬取某平台短视频的方法
2021/02/08 Python
css3动画事件—webkitAnimationEnd与计时器time事件
2013/01/31 HTML / CSS
使用css创建三角形 使用CSS3创建3d四面体原理及代码(html5实践)
2013/01/06 HTML / CSS
突袭HTML5之Javascript API扩展4—拖拽(Drag/Drop)概述
2013/01/31 HTML / CSS
创新比赛获奖感言
2014/02/13 职场文书
党的群众路线剖析材料
2014/10/09 职场文书
餐厅如何利用“营销策略”扭转亏本局面
2019/10/15 职场文书
【HBU】数据库第四周 单表查询
2021/04/05 SQL Server