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 相关文章推荐
js 3种归并操作的实例代码
Oct 30 Javascript
jquery选择器排除某个DOM元素的方法(实例演示)
Apr 25 Javascript
JavaScript fontsize方法入门实例(按照指定的尺寸来显示字符串)
Oct 17 Javascript
JS实现随机乱撞彩色圆球特效的方法
May 05 Javascript
跟我学习javascript的最新标准ES6
Nov 20 Javascript
JS弹性运动实现方法分析
Dec 15 Javascript
使用JavaScript判断用户输入的是否为正整数(两种方法)
Feb 05 Javascript
基于cookie实现zTree树刷新后展开状态不变
Feb 28 Javascript
浅谈javascript的url参数parse和build函数
Mar 04 Javascript
vue select二级联动第二级默认选中第一个option值的实例
Jan 10 Javascript
vuex 动态注册方法 registerModule的实现
Jul 03 Javascript
vue 开发企业微信整合案例分析
Dec 02 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伪静态写法附代码
2008/06/20 PHP
php实现的获取网站备案信息查询代码(360)
2013/09/23 PHP
排序算法之PHP版快速排序、冒泡排序
2014/04/09 PHP
PHP、Python和Javascript的装饰器模式对比
2015/02/03 PHP
javascript动画效果类封装代码
2007/08/28 Javascript
javascript 屏蔽鼠标键盘的几段代码
2008/01/02 Javascript
JS判断元素为数字的奇异写法分享
2012/08/01 Javascript
jquery实现的带缩略图的焦点图片切换(自动播放/响应鼠标动作)
2013/01/23 Javascript
JavaScript中的值是按值传递还是按引用传递问题探讨
2015/01/30 Javascript
用JS写的一个Ajax库(实例代码)
2016/08/06 Javascript
详解Angular2中的编程对象Observable
2016/09/17 Javascript
微信小程序中子页面向父页面传值实例详解
2017/03/20 Javascript
vue上传图片组件编写代码
2017/07/26 Javascript
快速理解 JavaScript 中的 LHS 和 RHS 查询的用法
2017/08/24 Javascript
如何重置vue打印变量的显示方式
2017/12/06 Javascript
Vue.js 的移动端组件库mint-ui实现无限滚动加载更多的方法
2017/12/23 Javascript
ES6中的class是如何实现的(附Babel编译的ES5代码详解)
2019/05/17 Javascript
JavaScript面向对象程序设计中对象的定义和继承详解
2019/07/29 Javascript
Vue 的 v-model用法实例
2020/11/23 Vue.js
vue element实现表格合并行数据
2020/11/30 Vue.js
[01:01:35]Optic vs paiN 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
python 排序算法总结及实例详解
2016/09/28 Python
Python字典,函数,全局变量代码解析
2017/12/18 Python
Python实现的基于优先等级分配糖果问题算法示例
2018/04/25 Python
对Python 窗体(tkinter)树状数据(Treeview)详解
2018/10/11 Python
详解django的serializer序列化model几种方法
2018/10/16 Python
基于Python3.6中的OpenCV实现图片色彩空间的转换
2020/02/03 Python
Python连接Impala实现步骤解析
2020/08/04 Python
python palywright库基本使用
2021/01/21 Python
Marlies Dekkers内衣法国官方网上商店:国际知名的荷兰内衣品牌
2019/03/18 全球购物
纪念九一八事变演讲稿:勿忘国耻
2014/09/14 职场文书
2016党员干部廉洁自律心得体会
2016/01/13 职场文书
古诗之感恩老师
2019/10/24 职场文书
JS一分钟在github+Jekyll的博客中添加访问量功能的实现
2021/04/03 Javascript
Python 如何利用ffmpeg 处理视频素材
2021/11/27 Python
TypeScript实用技巧 Nominal Typing名义类型详解
2022/09/23 Javascript