JS类库
/*------------------------------------------------------------
2 *                    S.Sams Lifexperience
 *                    S.Sams Lifexperience
3 * CopyRight (C) 2003-2007 S.Sams Lifexperience ScriptClassLib
 * CopyRight (C) 2003-2007 S.Sams Lifexperience ScriptClassLib
4 * MSNLive: S.Sams#msn.com
 * MSNLive: S.Sams#msn.com
5 * Http://blog.8see.net/
 * Http://blog.8see.net/
6 * UPdate by : 2007-01-19 转载传播请保留版权
 * UPdate by : 2007-01-19 转载传播请保留版权
7 *-----------------------------------------------------------*/
 *-----------------------------------------------------------*/
8 
 
9
10 /*    $ 获取指定对象
/*    $ 获取指定对象
11 @element    对象名
    @element    对象名
12 可以使用对象名集合,返回值为对象的集合
    可以使用对象名集合,返回值为对象的集合
13 如果您使用了 Prototype 类库, 请把该函数注释掉
    如果您使用了 Prototype 类库, 请把该函数注释掉
14 Sams_object.Get() 中同样实现该函数的所有功能
    Sams_object.Get() 中同样实现该函数的所有功能
15 */
*/
16 function $(element) {
function $(element) {
17 if (arguments.length > 1) {
  if (arguments.length > 1) {
18 for (var i = 0, elements = [], length = arguments.length; i < length; i++)
    for (var i = 0, elements = [], length = arguments.length; i < length; i++)
19 elements.push($(arguments[i]));
      elements.push($(arguments[i]));
20 return elements;
    return elements;
21 }
  }
22 if (typeof element == 'string')
  if (typeof element == 'string')
23 element = document.getElementById(element);
    element = document.getElementById(element);
24 return element;
  return element;
25 }
}
26
27 /// 浏览器相关操作
/// 浏览器相关操作
28 var Sams_browse = {
var Sams_browse = {
29 /*    检测浏览信息 */
    /*    检测浏览信息 */
30 checkBrowser : function ()
    checkBrowser : function ()
31 {
    { 
32 this.ver=navigator.appVersion
                this.ver=navigator.appVersion 
33 this.dom=document.getElementById?1:0
                this.dom=document.getElementById?1:0 
34 this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom)?1:0;
                this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom)?1:0; 
35 this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0;
                this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0; 
36 this.ie4=(document.all && !this.dom)?1:0;
                this.ie4=(document.all && !this.dom)?1:0; 
37 this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0;
                this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0; 
38 this.ns4=(document.layers && !this.dom)?1:0;
                this.ns4=(document.layers && !this.dom)?1:0; 
39 this.mac=(this.ver.indexOf('Mac') > -1) ?1:0;
                this.mac=(this.ver.indexOf('Mac') > -1) ?1:0; 
40 this.ope=(navigator.userAgent.indexOf('Opera')>-1);
                this.ope=(navigator.userAgent.indexOf('Opera')>-1); 
41 this.ie=(this.ie6 || this.ie5 || this.ie4)
                this.ie=(this.ie6 || this.ie5 || this.ie4) 
42 this.ns=(this.ns4 || this.ns5)
                this.ns=(this.ns4 || this.ns5) 
43 this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns5 || this.ns4 || this.mac || this.ope)
                this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns5 || this.ns4 || this.mac || this.ope) 
44 this.nbw=(!this.bw)
                this.nbw=(!this.bw) 
45 return this;
                return this;
46 },
    },
47
48 /*    设为首页
    /*    设为首页
49 @url        要设为首页的地址
        @url        要设为首页的地址
50 */
    */
51 SetDefault : function ()
    SetDefault : function ()
52 {
    {
53 this.style.behavior='url(#default#homepage)';
        this.style.behavior='url(#default#homepage)';
54 this.setHomePage(this.GetUrl());
        this.setHomePage(this.GetUrl());
55 return false;
        return false;
56 },
    },
57
58 /*    复制指定URL地址
    /*    复制指定URL地址
59 @Msg        要写入剪贴板的字符集
        @Msg        要写入剪贴板的字符集
60 */
    */
61 SetCopy    : function (Msg){
    SetCopy    : function (Msg){
62 if(navigator.userAgent.toLowerCase().indexOf('ie') > -1) {
        if(navigator.userAgent.toLowerCase().indexOf('ie') > -1) {
63 clipboardData.setData('Text',Msg);
            clipboardData.setData('Text',Msg);
64 alert ("网址“"+Msg+"”\n已经复制到您的剪贴板中\n您可以使用Ctrl+V快捷键粘贴到需要的地方");
            alert ("网址“"+Msg+"”\n已经复制到您的剪贴板中\n您可以使用Ctrl+V快捷键粘贴到需要的地方");
65 }
        }
66 else
        else 
67 {
        {
68 prompt("请复制网站地址:",Msg);
            prompt("请复制网站地址:",Msg); 
69 }
        }
70 },
    },
71
72 /*    加入收藏
    /*    加入收藏
73 @site        站点名称
        @site        站点名称
74 @url        地址
        @url        地址
75 */
    */
76 AddBookmark : function (site, url){
    AddBookmark : function (site, url){
77 if(navigator.userAgent.toLowerCase().indexOf('ie') > -1) {
        if(navigator.userAgent.toLowerCase().indexOf('ie') > -1) {
78 window.external.addFavorite(url,site)
            window.external.addFavorite(url,site)
79 } else if (navigator.userAgent.toLowerCase().indexOf('opera') > -1) {
        } else if (navigator.userAgent.toLowerCase().indexOf('opera') > -1) {
80 alert ("请使用Ctrl+T将本页加入收藏夹");
            alert ("请使用Ctrl+T将本页加入收藏夹");
81 } else {
        } else {
82 alert ("请使用Ctrl+D将本页加入收藏夹");
            alert ("请使用Ctrl+D将本页加入收藏夹");
83 }
        }
84 },
    },
85
86 /*    打开Url指定宽度和高度的窗口 */
    /*    打开Url指定宽度和高度的窗口 */
87 OpenWindows : function (url,width,height)
    OpenWindows : function (url,width,height)
88 {
    {
89 window.open(url,'newwin','width='+width+',height='+height);
        window.open(url,'newwin','width='+width+',height='+height);
90 return false;
        return false;
91 },
    },
92
93 /*    禁止浏览器的Javascript错误提示 */
    /*    禁止浏览器的Javascript错误提示 */
94 CloseError : function(){
    CloseError : function(){
95 window.onerror = function(){return true;};
        window.onerror = function(){return true;};
96 },
    },
97
98 /*    获取浏览器URL */
    /*    获取浏览器URL */
99 GetUrl : function(){
    GetUrl : function(){
100 return location.href;
        return location.href;
101 },
    },
102
103 /*    获取URL参数 */
    /*    获取URL参数 */
104 GetUrlParam : function(){
    GetUrlParam : function(){
105 return location.search;
        return location.search;
106 },
    },
107 
    
108 /*    获取页面来源 */
    /*    获取页面来源 */
109 GetFrom : function(){
    GetFrom : function(){
110 return document.referrer;
        return document.referrer;
111 },
    },
112
113 /*    获取指定的URL参数值
    /*    获取指定的URL参数值
114 @name        参数名
        @name        参数名
115 */
    */
116 Request : function(name){
    Request : function(name){
117 var GetUrl = this.GetUrl();
        var GetUrl = this.GetUrl();
118 var Plist = new Array();
        var Plist = new Array();
119 if(GetUrl.indexOf('?') > 0)
        if(GetUrl.indexOf('?') > 0)
120 {
        {
121 Plist = GetUrl.split('?')[1].split('&');
            Plist = GetUrl.split('?')[1].split('&');
122 }
        }
123 else if(GetUrl.indexOf('#') > 0)
        else if(GetUrl.indexOf('#') > 0)
124 {
        {
125 Plist = GetUrl.split('#')[1].split('&');
            Plist = GetUrl.split('#')[1].split('&');
126 }
        }
127 if (GetUrl.length > 0)
        if (GetUrl.length > 0)
128 {
        {
129 for(var i=0; i<Plist.length; i++)
            for(var i=0; i<Plist.length; i++)
130 {
            {
131 var GetValue = Plist[i].split('=');
                var GetValue = Plist[i].split('=');
132 if (GetValue[0].toUpperCase() == name.toUpperCase())
                if (GetValue[0].toUpperCase() == name.toUpperCase())
133 {
                {
134 return GetValue[1];
                    return GetValue[1];
135 break;
                    break;
136 }
                }
137 }
            }
138 return;
            return;
139 }
        }
140 },
    },
141
142 /*    直接将HTML写到新窗口
    /*    直接将HTML写到新窗口
143 @title        标题
        @title        标题
144 @msg        内容
        @msg        内容
145 */
    */
146 Popmsg : function PopIt(title,msg)
    Popmsg : function PopIt(title,msg)
147 {
    {
148 var popup = window.open('','popDialog','height=500,width=400,scrollbars=yes');
        var popup = window.open('','popDialog','height=500,width=400,scrollbars=yes');
149 popup.document.write('<html><title>'+title+'</title><style>body{margin:10px;font:13px Arial;}span{text-line:20px;}</style><body><span style=\'font:14px arial;\'>'+msg + '</span></body></html>');
        popup.document.write('<html><title>'+title+'</title><style>body{margin:10px;font:13px Arial;}span{text-line:20px;}</style><body><span style=\'font:14px arial;\'>'+msg + '</span></body></html>');
150 popup.document.close();
        popup.document.close();
151 }
    }
152 };
};
153
154
155 /// 对象操作
/// 对象操作
156 var Sams_object = {
var Sams_object = {
157 
    
158 /*    创建一个DIV对象
    /*    创建一个DIV对象
159 @ID            要创建的对象ID
        @ID            要创建的对象ID
160 @ClassName    创建对象的Class
        @ClassName    创建对象的Class
161 @SetValue    设置该对象值
        @SetValue    设置该对象值
162 @ToDiv        将对象追加到指定的对象,如指定的对象不存在,则追加在Body的后面
        @ToDiv        将对象追加到指定的对象,如指定的对象不存在,则追加在Body的后面
163 返回        创建后的对象
        返回        创建后的对象
164 */
    */
165 CreateDiv : function (ID,ClassName,SetValue,ToDiv){
    CreateDiv : function (ID,ClassName,SetValue,ToDiv){
166 var creatediv = document.createElement('div');
        var creatediv = document.createElement('div');
167 if(ID != null) creatediv.id = ID;
        if(ID != null) creatediv.id = ID;
168 creatediv.style.position = 'absolute';
        creatediv.style.position = 'absolute';
169 if(ClassName != null) creatediv.className = ClassName;
        if(ClassName != null) creatediv.className = ClassName;
170 if(this.Get(ToDiv))
        if(this.Get(ToDiv))
171 {
        {
172 this.Get(ToDiv).appendChild(creatediv);
            this.Get(ToDiv).appendChild(creatediv);
173 }
        }
174 else
        else
175 {
        {
176 document.getElementsByTagName('body')[0].appendChild(creatediv);
            document.getElementsByTagName('body')[0].appendChild(creatediv);
177 }
        }
178 this.SetValue(ID,SetValue);
        this.SetValue(ID,SetValue);
179 return this.Get(ID);
        return this.Get(ID);
180 },
    },
181 
    
182 /*    删除指定DIV对象
    /*    删除指定DIV对象
183 @objid        要删除的对象ID
        @objid        要删除的对象ID
184 返回        Bool 操作结果
        返回        Bool 操作结果
185 */
    */
186 DeleteDiv : function (objid)
    DeleteDiv : function (objid)
187 {
    {
188 try
        try
189 {
        {
190 if(this.Get(objid))
            if(this.Get(objid))
191 {
            {
192 var GetParent = this.Get(objid).parentNode;
                var GetParent = this.Get(objid).parentNode;
193 GetParent.removeChild(this.Get(objid));
                GetParent.removeChild(this.Get(objid));
194 return true;
                return true;
195 }
            }
196 else
            else
197 {
            {
198 return false;
                return false;
199 }
            }
200 }
        }
201 catch(e)
        catch(e)
202 {
        {
203 return false;
            return false;
204 }
        }
205 },
    },
206
207 /*    获取浏览器对象
    /*    获取浏览器对象
208 @id        要获取的对象ID
        @id        要获取的对象ID
209 可以使用对象名集合,返回值为对象的集合
        可以使用对象名集合,返回值为对象的集合
210 */
    */
211 Get : function (objid) {
    Get : function (objid) {
212 if (arguments.length > 1) {
        if (arguments.length > 1) {
213 for (var i = 0, objids = [], length = arguments.length; i < length; i++)
            for (var i = 0, objids = [], length = arguments.length; i < length; i++)
214 objids.push(this.Get(arguments[i]));
              objids.push(this.Get(arguments[i]));
215 return objids;
            return objids;
216 }
        }
217 if (typeof objid == 'string')
        if (typeof objid == 'string')
218 {
        {
219 if (document.getElementById) {
            if (document.getElementById) {
220 objid = document.getElementById(objid);
                objid = document.getElementById(objid);
221 } else if (document.all) {
            } else if (document.all) {
222 objid = document.all[objid];
                objid = document.all[objid];
223 } else if (document.layers) {
            } else if (document.layers) {
224 objid = document.layers[objid];
                objid = document.layers[objid];
225 }
            }
226 }
        }
227 return objid;
        return objid;
228 },
    },
229 
    
230 /*    获取对象的值
    /*    获取对象的值
231 @objid        对象ID
        @objid        对象ID
232 */
    */
233 GetValue : function (objid) {
    GetValue : function (objid) {
234 if (typeof objid == 'string')
        if (typeof objid == 'string')
235 {
        {
236 var getTagName = this.Get(objid).tagName.toLowerCase();
            var getTagName = this.Get(objid).tagName.toLowerCase();
237 if (getTagName == 'input' || getTagName == 'textarea' || getTagName == 'select')
            if (getTagName == 'input' || getTagName == 'textarea' || getTagName == 'select')
238 {
            {
239 return this.Get(objid).value;
                return this.Get(objid).value;
240 }
            }
241 else if (getTagName == 'div' || getTagName == 'span')
            else if (getTagName == 'div' || getTagName == 'span')
242 {
            {
243 return this.Get(objid).innerText;
                return this.Get(objid).innerText;
244 }
            }
245 }
        }
246 else if (typeof objid == 'object')
        else if (typeof objid == 'object')
247 {
        {
248 return objid.value;
            return objid.value;
249 }
        }
250 },
    },
251
252 /*    设置指定对象的值,实现可以直接赋值或清除操作
    /*    设置指定对象的值,实现可以直接赋值或清除操作
253 @objid        对象ID
        @objid        对象ID
254 @inserValue    传入值(可选项 Null:清除该ID的值, 则直接赋值)
        @inserValue    传入值(可选项 Null:清除该ID的值, 则直接赋值)
255 */
    */
256 SetValue: function(objid,inserValue) {
    SetValue: function(objid,inserValue) {
257 var getTagName = this.Get(objid).tagName.toLowerCase();
        var getTagName = this.Get(objid).tagName.toLowerCase();
258 if (inserValue == null) inserValue = '';
        if (inserValue == null) inserValue = '';
259 if (getTagName == 'input' || getTagName == 'textarea')
        if (getTagName == 'input' || getTagName == 'textarea')
260 {
        {
261 this.Get(objid).value = inserValue;
            this.Get(objid).value = inserValue;
262 }
        }
263 else if (getTagName == 'div' || getTagName == 'sapn')
        else if (getTagName == 'div' || getTagName == 'sapn')
264 {
        {
265 
            
266 this.Get(objid).innerText = inserValue;
            this.Get(objid).innerText = inserValue;
267 }
        }
268 },
    },
269 
    
270 /*    拷贝对象值到剪贴板
    /*    拷贝对象值到剪贴板  
271 @str        对象值
        @str        对象值
272 */
    */
273 CopyCode : function (str) {
    CopyCode : function (str) {
274 var rng = document.body.createTextRange();
        var rng = document.body.createTextRange();
275 rng.moveToElementText(str);
        rng.moveToElementText(str);
276 rng.scrollIntoView();
        rng.scrollIntoView();
277 rng.select();
        rng.select();
278 rng.execCommand("Copy");
        rng.execCommand("Copy");
279 rng.collapse(false);
        rng.collapse(false);
280 },
    },
281 
    
282 /*    显示隐藏一个对象
    /*    显示隐藏一个对象 
283 @Objid        对象ID
        @Objid        对象ID
284 @isshow        具体操作,指定Obj为False : none或者True : block (可选)
        @isshow        具体操作,指定Obj为False : none或者True : block (可选)
285 */
    */
286 ShowHidd : function(objid,isshow){
    ShowHidd : function(objid,isshow){
287 if (isshow != null)
        if (isshow != null)
288 {
        {
289 if(isshow)
            if(isshow)
290 {
            {
291 this.Get(objid).style.display = 'block';
                this.Get(objid).style.display = 'block';
292 }
            }
293 else
            else
294 {
            {
295 this.Get(objid).style.display = 'none';
                this.Get(objid).style.display = 'none';
296 }
            }
297 }
        }
298 else
        else
299 {
        {
300 if(this.Get(objid).style.display == 'none')
            if(this.Get(objid).style.display == 'none')
301 {
            {
302 this.Get(objid).style.display = 'block';
                this.Get(objid).style.display = 'block';
303 }
            }
304 else
            else
305 {
            {
306 this.Get(objid).style.display = 'none';
                this.Get(objid).style.display = 'none';
307 }
            }
308 }
        }
309 },
    },
310 
    
311 /*    当前对象是否可见
    /*    当前对象是否可见
312 @objid        对象ID
        @objid        对象ID
313 */
    */
314 IsVisible : function(objid){
    IsVisible : function(objid){
315 if(this.Get(objid))
        if(this.Get(objid))
316 {
        {
317 try
            try
318 {
            {
319 if (this.Get(objid).style.display == 'none')
                if (this.Get(objid).style.display == 'none')
320 {
                {
321 return false
                    return false
322 }
                }
323 if(this.Get(objid).style.visibility == 'hidden')
                if(this.Get(objid).style.visibility == 'hidden')
324 {
                {
325 return false;
                    return false;
326 }
                }
327 return true;
                return true;
328 }
            }
329 catch(e)
            catch(e)
330 {
            {
331 return false;
                return false;
332 }
            }
333 }
        }
334 else
        else
335 {
        {
336 return false;
            return false;
337 }
        }
338 }
    }
339 };
};
340
341 /// 字符处理
/// 字符处理
342 var Sams_string = {
var Sams_string = {
343 /*    取左边的指定长度的值
    /*    取左边的指定长度的值  
344 @str        要处理的字符集
        @str        要处理的字符集
345 @n            长度
        @n            长度
346 */
    */
347 Left : function (str,n)
    Left : function (str,n)
348 {
    {
349 if(str.length > 0)
        if(str.length > 0)
350 {
        {
351 if(n>str.length) n = str.length;
            if(n>str.length) n = str.length;
352 return str.substr(0,n)
            return str.substr(0,n)
353 }
        }
354 else
        else
355 {
        {
356 return;
         return;
357 }
        }
358 },
    },
359 
    
360 /*    取右边的指定长度的值
    /*    取右边的指定长度的值   
361 @str        要处理的字符集
        @str        要处理的字符集
362 @n            长度
        @n            长度
363 */
    */
364 Right : function (str,n)
    Right : function (str,n)
365 {
    {
366 if(str.length > 0)
        if(str.length > 0)
367 {
        {
368 if(n>=str.length) return str;
            if(n>=str.length) return str;
369 return str.substr(str.length-n,n);
            return str.substr(str.length-n,n);
370 }
        }
371 else
        else
372 {
        {
373 return;
            return;
374 }
        }
375 },
    },
376 
    
377 /*    Trim:清除两边空格
    /*    Trim:清除两边空格 
378 @str        要处理的字符集
        @str        要处理的字符集
379 */
    */
380 Trim : function (str)
    Trim : function (str) 
381 {
    {
382 if (typeof str == 'string') return str.replace(/(^\s*)|(\s*$)/g, '');
        if (typeof str == 'string') return str.replace(/(^\s*)|(\s*$)/g, '');
383 },
    },
384
385 /*    LTrim:清除左边的空格
    /*    LTrim:清除左边的空格 
386 @str        要处理的字符集
        @str        要处理的字符集
387 */
    */
388 Ltrim : function (str)
    Ltrim : function (str) 
389 {
    { 
390 if (typeof str == 'string') return str.replace(/(^\s*)/g, '');
        if (typeof str == 'string') return str.replace(/(^\s*)/g, '');
391 },
    },
392
393 /*    RTrim: 清除右边的空格
    /*    RTrim: 清除右边的空格 
394 @str        要处理的字符集
        @str        要处理的字符集
395 */
    */
396 Rtrim : function (str)
    Rtrim : function (str) 
397 {
    { 
398 if (typeof str == 'string') return str.replace(/(\s*$)/g, '');
        if (typeof str == 'string') return str.replace(/(\s*$)/g, '');
399 },
    },
400 
    
401 /*    清除前后的非字符
    /*    清除前后的非字符
402 @str        要处理的字符集
        @str        要处理的字符集
403 */
    */
404 strip : function(str) {
    strip : function(str) {
405 if (typeof str == 'string') return str.replace(/^\s+/, '').replace(/(^\s*)|(\s*$)/g, '');
        if (typeof str == 'string') return str.replace(/^\s+/, '').replace(/(^\s*)|(\s*$)/g, '');
406 },
    },
407
408 /*    过滤字符里面的HTML标签
    /*    过滤字符里面的HTML标签
409 @str        要处理的字符集
        @str        要处理的字符集
410 */
    */
411 stripTags : function(str) {
    stripTags : function(str) {
412 if (typeof str == 'string')return str.replace(/<\/?[^>]+>/gi, '').replace(/(^\s*)|(\s*$)/g, '');
        if (typeof str == 'string')return str.replace(/<\/?[^>]+>/gi, '').replace(/(^\s*)|(\s*$)/g, '');
413 }
    }
414 };
};
415
416 /// 时间相关操作
/// 时间相关操作
417 var Sams_time = {
var Sams_time = {
418 /*    获取当天日期 yyyy-MM-dd */
    /*    获取当天日期 yyyy-MM-dd */
419 GetDateNow : function (){
    GetDateNow : function (){
420 var d,y,m,dd;
        var d,y,m,dd;
421 d = new Date();
        d = new Date(); 
422 y = d.getYear();
        y = d.getYear();
423 m = d.getMonth() + 1;
        m = d.getMonth() + 1;
424 dd = d.getDate();
        dd = d.getDate();                                                
425 return y+"-"+m+"-"+dd;
        return y+"-"+m+"-"+dd;
426 },
    },
427
428 /*    获取指定日期后的特定天数的日期值
    /*    获取指定日期后的特定天数的日期值
429 @toDate        当前指定的日期
        @toDate        当前指定的日期
430 @N            要添加的日期数
        @N            要添加的日期数
431 */
    */ 
432 AddDays : function(toDate,N){
    AddDays : function(toDate,N){
433 var aDate=this._cvtISOToDate(toDate);
        var aDate=this._cvtISOToDate(toDate);
434 if (!aDate) return "";
        if (!aDate) return "";
435 var millis=86400000 * N;
        var millis=86400000 * N;
436 aDate=new Date(aDate.getTime()+millis);
        aDate=new Date(aDate.getTime()+millis);
437 return this._fmtDateISO(aDate);
        return this._fmtDateISO(aDate);
438 },
    },
439 _fmtDateISO : function (aDate) {
    _fmtDateISO : function (aDate) {
440 with (aDate) {
        with (aDate) {
441 var mm=getMonth()+1;
            var mm=getMonth()+1;
442 if (mm<10) {mm='0'+mm;}
            if (mm<10) {mm='0'+mm;}
443 var dd=getDate();
            var dd=getDate();
444 if (dd<10) {dd='0'+dd;}
            if (dd<10) {dd='0'+dd;}
445 return (getFullYear() + '-' + mm + '-' + dd);
            return (getFullYear() + '-' + mm + '-' + dd);
446 }
        }
447 },
    },
448 _cvtISOToDate : function (isoDate) {
    _cvtISOToDate : function (isoDate) {
449 var atomDate= isoDate.split('-');
        var atomDate= isoDate.split('-');
450 var aDate=new Date(parseInt(atomDate[0],10),parseInt(atomDate[1],10)-1,parseInt(atomDate[2],10),6,0,0);
        var aDate=new Date(parseInt(atomDate[0],10),parseInt(atomDate[1],10)-1,parseInt(atomDate[2],10),6,0,0);
451 return aDate;
        return aDate;
452 }
    }
453 };
};
454
455 /// 图像相关操作
/// 图像相关操作
456 var Sams_media = {
var Sams_media = {
457 /*    为单一图像添加鼠标中键放大缩小功能, 批量可以直接用 ResizeImage(指定添加该功能的图片大小:Int) 即可 (该功能只适用于IE)
    /*    为单一图像添加鼠标中键放大缩小功能, 批量可以直接用 ResizeImage(指定添加该功能的图片大小:Int) 即可 (该功能只适用于IE)
458 objid        对象ID
        objid        对象ID    
459 */
    */
460 ZoomFun : function(objid){
    ZoomFun : function(objid){
461 Sams_object.Get(objid).onmousewheel = function(){return Sams_media.imagecontrol(this);}
        Sams_object.Get(objid).onmousewheel = function(){return Sams_media.imagecontrol(this);}
462 },
    },
463
464 /*    重置图片尺寸同时添加放大功能 (该功能只适用于IE)
    /*    重置图片尺寸同时添加放大功能 (该功能只适用于IE) 
465 @IntSize    指定图像的大小
        @IntSize    指定图像的大小
466 如果适合图像大小就添加放大缩小功能
        如果适合图像大小就添加放大缩小功能
467 */
    */ 
468 ResizeImage: function (IntSize) {
    ResizeImage: function (IntSize) {
469 var imgsinlog=document.getElementsByTagName('img');
        var imgsinlog=document.getElementsByTagName('img');
470 for(j=0; j<imgsinlog.length; j++) {
        for(j=0; j<imgsinlog.length; j++) {
471 if (imgsinlog[j].width >= IntSize) {
            if (imgsinlog[j].width >= IntSize) {
472 imgsinlog[j].width = IntSize;
                imgsinlog[j].width = IntSize;
473 imgsinlog[j].style.cursor= 'pointer';
                imgsinlog[j].style.cursor= 'pointer';
474 imgsinlog[j].onclick = function() {window.open(this.src);}
                imgsinlog[j].onclick = function() {window.open(this.src);}
475 if (navigator.userAgent.toLowerCase().indexOf('ie') > -1) {
                if (navigator.userAgent.toLowerCase().indexOf('ie') > -1) {
476 imgsinlog[j].title = '您可以用鼠标中键或者使用Ctrl+鼠标滚轮缩放图片,点击图片可在新窗口打开';
                    imgsinlog[j].title = '您可以用鼠标中键或者使用Ctrl+鼠标滚轮缩放图片,点击图片可在新窗口打开';
477 imgsinlog[j].onmousewheel = function(){return Sams_media.imagecontrol(this);};
                    imgsinlog[j].onmousewheel = function(){return Sams_media.imagecontrol(this);};
478 }
                }
479 else
                else
480 {
                {
481 imgsinlog[j].title = '点击图片可在新窗口打开';
                    imgsinlog[j].title = '点击图片可在新窗口打开';
482 }
                }
483 }
            }
484 }
        }
485 },
    },
486 imagecontrol : function(obj){
    imagecontrol : function(obj){
487 var zoom=parseInt(obj.style.zoom, 10)||100;zoom+=event.wheelDelta/12;
        var zoom=parseInt(obj.style.zoom, 10)||100;zoom+=event.wheelDelta/12;
488 if (zoom>0) obj.style.zoom=zoom+'%';
        if (zoom>0) obj.style.zoom=zoom+'%';
489 return false;
        return false;
490 },
    },
491
492 /*    如果图像出现下载不了等异常,显示的错误提示图片
    /*    如果图像出现下载不了等异常,显示的错误提示图片
493 @errimgpath    显示错误提示的图像路径
        @errimgpath    显示错误提示的图像路径
494 */
    */ 
495 ImagesError : function(errimgpath){
    ImagesError : function(errimgpath){
496 var imglist = document.getElementsByTagName('img');
        var imglist = document.getElementsByTagName('img');
497 for(j=0; j<imglist.length; j++) {
        for(j=0; j<imglist.length; j++) {
498 imglist[j].onerror = function(){
            imglist[j].onerror = function(){
499 this.src = errimgpath;
                this.src = errimgpath;
500 }
            }
501 }
        }
502 },
    },
503
504 /*    显示媒体
    /*    显示媒体
505 @mFile        文件路径
        @mFile        文件路径
506 @mFileType    文件类型(可为空,如为Flash,要指定为swf类型)
        @mFileType    文件类型(可为空,如为Flash,要指定为swf类型)
507 @ObjID        对象ID
        @ObjID        对象ID
508 @mWidth        显示的对象宽度
        @mWidth        显示的对象宽度
509 @mHeight    显示对象的高度
        @mHeight    显示对象的高度
510 注: 可以指定对象的ID, 如果ID不存在,会自动创建,追加在Body后面
        注: 可以指定对象的ID, 如果ID不存在,会自动创建,追加在Body后面
511 */
    */
512 ShowMedia : function (mFile, mFileType, ObjID, mWidth, mHeight) {
    ShowMedia : function (mFile, mFileType, ObjID, mWidth, mHeight) {
513 var mediaStr;
        var mediaStr;
514 switch(mFileType){
        switch(mFileType){
515 case "swf":
            case "swf":
516 mediaStr="<object codeBase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0' classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' width='"+mWidth+"' height='"+mHeight+"'><param name='movie' value='"+mFile+"'><param name='quality' value='high'><param name='AllowScriptAccess' value='never'><embed src='"+mFile+"' quality='high' pluginspage='http://www.macromedia.com/go/getflashplayer' type='application/x-shockwave-flash' width='"+mWidth+"' height='"+mHeight+"'></embed></OBJECT>";
                mediaStr="<object codeBase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0' classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' width='"+mWidth+"' height='"+mHeight+"'><param name='movie' value='"+mFile+"'><param name='quality' value='high'><param name='AllowScriptAccess' value='never'><embed src='"+mFile+"' quality='high' pluginspage='http://www.macromedia.com/go/getflashplayer' type='application/x-shockwave-flash' width='"+mWidth+"' height='"+mHeight+"'></embed></OBJECT>";
517 break;
                break;
518 default :
            default :
519 mediaStr="<object width='"+mWidth+"' height='"+mHeight+"' classid='CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6'><param name='url' value='"+mFile+"' /><embed width='"+mWidth+"' height='"+mHeight+"' type='application/x-mplayer2' src='"+mFile+"'></embed></object>";
                mediaStr="<object width='"+mWidth+"' height='"+mHeight+"' classid='CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6'><param name='url' value='"+mFile+"' /><embed width='"+mWidth+"' height='"+mHeight+"' type='application/x-mplayer2' src='"+mFile+"'></embed></object>";
520 }
        }
521 
        
522 var mediaDiv = Sams_object.Get(ObjID);
        var mediaDiv = Sams_object.Get(ObjID);
523 
        
524 if (mediaDiv) {
        if (mediaDiv) {
525 mediaDiv.innerHTML = mediaStr;
            mediaDiv.innerHTML = mediaStr;
526 }
        } 
527 else
        else
528 {
        {
529 mediaDiv = document.createElement("div");
            mediaDiv = document.createElement("div");
530 mediaDiv.id = ObjID;
            mediaDiv.id = ObjID;
531 mediaDiv.innerHTML = mediaStr;
            mediaDiv.innerHTML = mediaStr;
532 document.getElementsByTagName('body')[0].appendChild(mediaDiv);
            document.getElementsByTagName('body')[0].appendChild(mediaDiv);
533 }
        }
534 return false;
        return false;
535 }
    }
536 };
};
537
538 /// 样式相关操作
/// 样式相关操作
539 var Sams_style = {
var Sams_style = {
540 /*    改变字体大小
    /*    改变字体大小
541 @objid        对象ID
        @objid        对象ID
542 @size        字号
        @size        字号
543 */
    */
544 doZoom : function (objid,size){
    doZoom : function (objid,size){
545 Sams_object.Get(objid).style.fontSize=size+'px';
        Sams_object.Get(objid).style.fontSize=size+'px';
546 },
    },
547
548 /*    改变指定对象样式
    /*    改变指定对象样式
549 @objid        对象ID
        @objid        对象ID
550 @className    要更改的ClassName
        @className    要更改的ClassName
551 */
    */
552 ClassName: function(objid, className) {
    ClassName: function(objid, className) {
553 Sams_object.Get(objid).className = className;
        Sams_object.Get(objid).className = className;
554 },
    },
555 
    
556 /*    对象定位
    /*    对象定位
557 @obj        要定位的对象
        @obj        要定位的对象
558 返回        X.Y 结果的数组对象
        返回        X.Y 结果的数组对象
559 */
    */
560 GotoXY : function (obj) {
    GotoXY : function (obj) {
561 var t=obj.offsetTop;
        var t=obj.offsetTop; 
562 var l=obj.offsetLeft;
        var l=obj.offsetLeft; 
563 while(obj=obj.offsetParent){
        while(obj=obj.offsetParent){ 
564 t+=obj.offsetTop;
            t+=obj.offsetTop; 
565 l+=obj.offsetLeft;
            l+=obj.offsetLeft; 
566 }
        }
567 return Array(t,l);
        return Array(t,l);
568 }
    }
569 };
};
570
571 /// 科学计算
/// 科学计算
572 var Sams_account = {
var Sams_account = {
573 /*    逢1进10计算
    /*    逢1进10计算
574 @ 数值
        @ 数值
575 */
    */
576 GetTen: function (i)
    GetTen: function (i)
577 {
    {
578 var items_One,Get_One;
        var items_One,Get_One;
579 if (i.length > 1&& (/^\d+$/.test(i)))
        if (i.length > 1&& (/^\d+$/.test(i)))
580 {
        {
581 items_One = i.substr(0,i.length-1);
           items_One = i.substr(0,i.length-1);
582 Get_One = i.substr(i.length-1,1);
           Get_One = i.substr(i.length-1,1);
583 if (parseInt(Get_One)>0)
           if (parseInt(Get_One)>0)
584 {
           {
585 items_One = parseInt(items_One)+1;
            items_One = parseInt(items_One)+1;
586 items_One = items_One + '0';
            items_One = items_One + '0';
587 }
           }
588 else
           else
589 {
            {
590 items_One = items_One + '0';
            items_One = items_One + '0';    
591 }
            }
592 }
        }
593 else
        else
594 {
        {
595 items_One = i;
            items_One = i;
596 }
        }
597 return items_One;
        return items_One;
598 }
    }
599 };
};
600
601 /// 数据验证(所有数值返回值均为Bool型)
/// 数据验证(所有数值返回值均为Bool型)
602 var Sams_validate = {
var Sams_validate = {
603 /*    是否是数字型数据
    /*    是否是数字型数据
604 @str        字符集
        @str        字符集
605 */
    */
606 IsNumber : function(str){
    IsNumber : function(str){
607 if (/^\d+$/.test(str)){return true;}else{return false;}
        if (/^\d+$/.test(str)){return true;}else{return false;}
608 },
    },
609
610 /*    是否是数字型数据
    /*    是否是数字型数据
611 @objid        对象ID
        @objid        对象ID
612 */
    */
613 IsNumberObj : function(objid){
    IsNumberObj : function(objid){
614 return this.IsNumber(Sams_object.GetValue(objid));
        return this.IsNumber(Sams_object.GetValue(objid));
615 },
    },
616
617 /*    是否是自然数型数据
    /*    是否是自然数型数据
618 @str        字符集
        @str        字符集
619 */
    */
620 IsInt : function(str){
    IsInt : function(str){
621 if (/^(\+|-)?\d+$/.test(str)){return true;}else{return false;}
        if (/^(\+|-)?\d+$/.test(str)){return true;}else{return false;}
622 },
    },
623
624 /*    是否是自然数型数据
    /*    是否是自然数型数据
625 @objid        对象ID
        @objid        对象ID
626 */
    */
627 IsIntObj : function(objid){
    IsIntObj : function(objid){
628 return this.IsInt(Sams_object.GetValue(objid));
        return this.IsInt(Sams_object.GetValue(objid));
629 },
    },
630 
    
631 /*    是否是中文字符
    /*    是否是中文字符
632 @str        字符集
        @str        字符集
633 */
    */
634 IsChinese : function(str)
    IsChinese : function(str)
635 {
    {
636 if (/^[\u4e00-\u9fa5]+$/.test(str)){return true;}else{return false;}
        if (/^[\u4e00-\u9fa5]+$/.test(str)){return true;}else{return false;}
637 },
    },
638
639 /*    是否是中文字符
    /*    是否是中文字符
640 @objid        对象ID
        @objid        对象ID
641 */
    */
642 IsChineseObj : function(objid)
    IsChineseObj : function(objid)
643 {
    {
644 return this.IsChinese(Sams_object.GetValue(objid));
        return this.IsChinese(Sams_object.GetValue(objid));
645 },
    },
646
647 /*    是否为英文字母
    /*    是否为英文字母
648 @str        字符集
        @str        字符集
649 */
    */
650 IsLower : function(str)
    IsLower : function(str)
651 {
    {
652 if (/^[A-Za-z]+$/.test(str)){return true}else{return false;}
         if (/^[A-Za-z]+$/.test(str)){return true}else{return false;}
653 },
    },
654
655 /*    是否为英文字母
    /*    是否为英文字母
656 @objid        对象ID
        @objid        对象ID
657 */
    */
658 IsLowerObj : function(objid)
    IsLowerObj : function(objid)
659 {
    {
660 return this.IsLower(Sams_object.GetValue(objid));
         return this.IsLower(Sams_object.GetValue(objid));
661 },
    },
662
663 /*    是否为正确的网址
    /*    是否为正确的网址
664 @str        字符集
        @str        字符集
665 */
    */
666 IsUrl : function(str)
    IsUrl : function(str)
667 {
    {
668 var myReg = /^((http:[/][/])?\w+([.]\w+|[/]\w*)*)?$/;
        var myReg = /^((http:[/][/])?\w+([.]\w+|[/]\w*)*)?$/;    
669 if(myReg.test(str)){return true;}else{return false;}
        if(myReg.test(str)){return true;}else{return false;}
670 },
    },
671
672 /*    是否为正确的网址
    /*    是否为正确的网址
673 @objid        对象ID
        @objid        对象ID
674 */
    */
675 IsUrlObj : function(objid)
    IsUrlObj : function(objid)
676 {
    {
677 return this.IsUrl(Sams_object.GetValue(objid));
        return this.IsUrl(Sams_object.GetValue(objid));
678 },
    },
679
680 /*    是否为正确的Email形式
    /*    是否为正确的Email形式
681 @str        字符集
        @str        字符集
682 */
    */
683 IsEmail : function(str)
    IsEmail : function(str)
684 {
    {
685 var myReg = /^([-_A-Za-z0-9\.]+)@([_A-Za-z0-9]+\.)+[A-Za-z0-9]{2,3}$/;
        var myReg = /^([-_A-Za-z0-9\.]+)@([_A-Za-z0-9]+\.)+[A-Za-z0-9]{2,3}$/;    
686 if(myReg.test(str)){return true;}else{return false;}
        if(myReg.test(str)){return true;}else{return false;}
687 },
    },
688 
    
689 
    
690 /*    是否为正确的Email形式
    /*    是否为正确的Email形式
691 @objid        对象ID
        @objid        对象ID
692 */
    */
693 IsEmailObj : function(objid)
    IsEmailObj : function(objid)
694 {
    {
695 return this.IsEmail(Sams_object.GetValue(objid));
        return this.IsEmail(Sams_object.GetValue(objid));
696 },
    },
697
698 /*    是否为正确的手机号码
    /*    是否为正确的手机号码
699 @str        字符集
        @str        字符集
700 */
    */
701 IsMobile : function(str)
    IsMobile : function(str)
702 {
    {
703 var regu =/(^[1][3][0-9]{9}$)|(^0[1][3][0-9]{9}$)/;
        var regu =/(^[1][3][0-9]{9}$)|(^0[1][3][0-9]{9}$)/;   
704 var re = new RegExp(regu);
        var re = new RegExp(regu);   
705 if (re.test(str)){return true;}else{return false;}
        if (re.test(str)){return true;}else{return false;}
706 },
    },
707
708 /*    是否为正确的手机号码
    /*    是否为正确的手机号码
709 @objid        对象ID
        @objid        对象ID
710 */
    */
711 IsMobileObj : function(objid)
    IsMobileObj : function(objid)
712 {
    {
713 return this.IsMobile(Sams_object.GetValue(objid));
        return this.IsMobile(Sams_object.GetValue(objid));
714 }
    }
715 };
};
716
717 /*
/*
718 实现Ajax功能
    实现Ajax功能
719 Sams_ajax.SendRequest('GET', url, null, recall, "addtohome");
    Sams_ajax.SendRequest('GET', url, null, recall, "addtohome");
720 Sams_ajax.SendRequest('GET', url, null, null);
    Sams_ajax.SendRequest('GET', url, null, null);
721 obj.responseText;
    obj.responseText;
722 */
*/
723 var Sams_ajax = {
var Sams_ajax = {
724 _objPool: [],
    _objPool: [],
725 _getInstance: function (){
    _getInstance: function (){
726 for (var i = 0; i < this._objPool.length; i ++){
        for (var i = 0; i < this._objPool.length; i ++){
727 if (this._objPool[i].readyState == 0 || this._objPool[i].readyState == 4){
            if (this._objPool[i].readyState == 0 || this._objPool[i].readyState == 4){
728 return this._objPool[i];
                return this._objPool[i];
729 }
            }
730 }
        }
731 this._objPool[this._objPool.length] = this._createObj();
        this._objPool[this._objPool.length] = this._createObj();
732 return this._objPool[this._objPool.length - 1];
        return this._objPool[this._objPool.length - 1];
733 },
    },
734 _createObj : function (){
     _createObj : function (){
735 if (window.XMLHttpRequest){
        if (window.XMLHttpRequest){
736 var objXMLHttp = new XMLHttpRequest();
            var objXMLHttp = new XMLHttpRequest();
737 }
        }
738 else{
        else{
739 var MSXML = ['MSXML2.XMLHTTP.5.0', 'MSXML2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP', 'Microsoft.XMLHTTP'];
            var MSXML = ['MSXML2.XMLHTTP.5.0', 'MSXML2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP', 'Microsoft.XMLHTTP'];
740 for(var n = 0; n < MSXML.length; n ++){
            for(var n = 0; n < MSXML.length; n ++){
741 try{
                try{
742 var objXMLHttp = new ActiveXObject(MSXML[n]);
                    var objXMLHttp = new ActiveXObject(MSXML[n]);
743 break;
                    break;
744 }
                }
745 catch(e){
                catch(e){
746 }
                }
747 }
            }
748 }
         }          
749 if (objXMLHttp.readyState == null){
        if (objXMLHttp.readyState == null){
750 objXMLHttp.readyState = 0;
            objXMLHttp.readyState = 0;
751 objXMLHttp.addEventListener("load", function (){
            objXMLHttp.addEventListener("load", function (){
752 objXMLHttp.readyState = 4;
                    objXMLHttp.readyState = 4;
753 if (typeof objXMLHttp.onreadystatechange == "function"){
                    if (typeof objXMLHttp.onreadystatechange == "function"){
754 objXMLHttp.onreadystatechange();
                        objXMLHttp.onreadystatechange();
755 }
                    }
756 },  false);
                },  false);
757 }
        }
758 return objXMLHttp;
        return objXMLHttp;
759 },
    },
760
761 /// 开始发送请求
    /// 开始发送请求
762 SendRequest : function (method, url, data, callback,funparam,funparam2){
    SendRequest : function (method, url, data, callback,funparam,funparam2){
763 var objXMLHttp = this._getInstance();
        var objXMLHttp = this._getInstance();
764 with(objXMLHttp){
        with(objXMLHttp){
765 try{
            try{
766 if (url.indexOf("?") > 0){
                if (url.indexOf("?") > 0){
767 url += "&randnum=" + Math.random();
                    url += "&randnum=" + Math.random();
768 }
                }
769 else{
                else{
770 url += "?randnum=" + Math.random();
                    url += "?randnum=" + Math.random();
771 }
                }
772 open(method, url, true);
                open(method, url, true);            
773 setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
                setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
774 send(data);
                send(data);
775 onreadystatechange = function (){
                onreadystatechange = function (){
776 if (objXMLHttp.readyState == 4 && (objXMLHttp.status == 200 || objXMLHttp.status == 304))
                    if (objXMLHttp.readyState == 4 && (objXMLHttp.status == 200 || objXMLHttp.status == 304))
777 {
                    {
778 callback(objXMLHttp,funparam,funparam2);
                        callback(objXMLHttp,funparam,funparam2);
779 }else{
                    }else{
780 callback(null,funparam,funparam2);
                        callback(null,funparam,funparam2);
781 }
                    }
782 }
                }
783 }
            }
784 catch(e){
            catch(e){
785 alert(e);
                alert(e);
786 }
            }
787 }
        }
788 }
    }
789 };
};
790
791 /// Cookies操作
/// Cookies操作
792 var Sams_cookies = {
var Sams_cookies = {
793 /*    cookies设置函数
    /*    cookies设置函数
794 @name        Cookies名称
        @name        Cookies名称
795 @value        值
        @value        值
796 */
    */
797 setCookie : function (name, value)
    setCookie : function (name, value)
798 {
    {
799 try
        try
800 {
        {
801 var argv = setCookie.arguments;
            var argv = setCookie.arguments;
802 var argc = setCookie.arguments.length;
            var argc = setCookie.arguments.length;
803 var expires = (argc > 2) ? argv[2] : null;
            var expires = (argc > 2) ? argv[2] : null;
804 if(expires!=null)
            if(expires!=null)
805 {
            {
806 var LargeExpDate = new Date ();
                var LargeExpDate = new Date ();
807 LargeExpDate.setTime(LargeExpDate.getTime() + (expires*1000*3600*24));
                LargeExpDate.setTime(LargeExpDate.getTime() + (expires*1000*3600*24));
808 }
            }
809 document.cookie = name + "=" + escape (value)+((expires == null) ? "" : ("; expires=" +LargeExpDate.toGMTString()));
            document.cookie = name + "=" + escape (value)+((expires == null) ? "" : ("; expires=" +LargeExpDate.toGMTString()));
810 return true;
            return true;
811 }
        }
812 catch(e)
        catch(e)
813 {
        {
814 return false;
            return false;
815 }
        }
816 },
    },
817
818 /*    cookies读取函数
    /*    cookies读取函数
819 @Name        Cookies名称
        @Name        Cookies名称
820 返回值        Cookies值
        返回值        Cookies值
821 */
    */
822 getCookie : function (Name)
    getCookie : function (Name)
823 {
    {
824 var search = Name + "="
        var search = Name + "="
825 if(document.cookie.length > 0)
        if(document.cookie.length > 0) 
826 {
        {
827 offset = document.cookie.indexOf(search)
            offset = document.cookie.indexOf(search)
828 if(offset != -1)
            if(offset != -1) 
829 {
            {
830 offset += search.length
                offset += search.length
831 end = document.cookie.indexOf(";", offset)
                end = document.cookie.indexOf(";", offset)
832 if(end == -1) end = document.cookie.length
                if(end == -1) end = document.cookie.length
833 return unescape(document.cookie.substring(offset, end))
                return unescape(document.cookie.substring(offset, end))
834 }
            }
835 else
            else
836 {
            {
837 return;
                return;
838 }
            }
839 }
        }
840 }
    }
841 };
};
2
 *                    S.Sams Lifexperience
 *                    S.Sams Lifexperience3
 * CopyRight (C) 2003-2007 S.Sams Lifexperience ScriptClassLib
 * CopyRight (C) 2003-2007 S.Sams Lifexperience ScriptClassLib4
 * MSNLive: S.Sams#msn.com
 * MSNLive: S.Sams#msn.com5
 * Http://blog.8see.net/
 * Http://blog.8see.net/6
 * UPdate by : 2007-01-19 转载传播请保留版权
 * UPdate by : 2007-01-19 转载传播请保留版权7
 *-----------------------------------------------------------*/
 *-----------------------------------------------------------*/8
 
 9

10
 /*    $ 获取指定对象
/*    $ 获取指定对象11
 @element    对象名
    @element    对象名12
 可以使用对象名集合,返回值为对象的集合
    可以使用对象名集合,返回值为对象的集合13
 如果您使用了 Prototype 类库, 请把该函数注释掉
    如果您使用了 Prototype 类库, 请把该函数注释掉14
 Sams_object.Get() 中同样实现该函数的所有功能
    Sams_object.Get() 中同样实现该函数的所有功能15
 */
*/16
 function $(element) {
function $(element) {17
 if (arguments.length > 1) {
  if (arguments.length > 1) {18
 for (var i = 0, elements = [], length = arguments.length; i < length; i++)
    for (var i = 0, elements = [], length = arguments.length; i < length; i++)19
 elements.push($(arguments[i]));
      elements.push($(arguments[i]));20
 return elements;
    return elements;21
 }
  }22
 if (typeof element == 'string')
  if (typeof element == 'string')23
 element = document.getElementById(element);
    element = document.getElementById(element);24
 return element;
  return element;25
 }
}26

27
 /// 浏览器相关操作
/// 浏览器相关操作28
 var Sams_browse = {
var Sams_browse = {29
 /*    检测浏览信息 */
    /*    检测浏览信息 */30
 checkBrowser : function ()
    checkBrowser : function ()31
 {
    { 32
 this.ver=navigator.appVersion
                this.ver=navigator.appVersion 33
 this.dom=document.getElementById?1:0
                this.dom=document.getElementById?1:0 34
 this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom)?1:0;
                this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom)?1:0; 35
 this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0;
                this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0; 36
 this.ie4=(document.all && !this.dom)?1:0;
                this.ie4=(document.all && !this.dom)?1:0; 37
 this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0;
                this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0; 38
 this.ns4=(document.layers && !this.dom)?1:0;
                this.ns4=(document.layers && !this.dom)?1:0; 39
 this.mac=(this.ver.indexOf('Mac') > -1) ?1:0;
                this.mac=(this.ver.indexOf('Mac') > -1) ?1:0; 40
 this.ope=(navigator.userAgent.indexOf('Opera')>-1);
                this.ope=(navigator.userAgent.indexOf('Opera')>-1); 41
 this.ie=(this.ie6 || this.ie5 || this.ie4)
                this.ie=(this.ie6 || this.ie5 || this.ie4) 42
 this.ns=(this.ns4 || this.ns5)
                this.ns=(this.ns4 || this.ns5) 43
 this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns5 || this.ns4 || this.mac || this.ope)
                this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns5 || this.ns4 || this.mac || this.ope) 44
 this.nbw=(!this.bw)
                this.nbw=(!this.bw) 45
 return this;
                return this;46
 },
    },47

48
 /*    设为首页
    /*    设为首页49
 @url        要设为首页的地址
        @url        要设为首页的地址50
 */
    */51
 SetDefault : function ()
    SetDefault : function ()52
 {
    {53
 this.style.behavior='url(#default#homepage)';
        this.style.behavior='url(#default#homepage)';54
 this.setHomePage(this.GetUrl());
        this.setHomePage(this.GetUrl());55
 return false;
        return false;56
 },
    },57

58
 /*    复制指定URL地址
    /*    复制指定URL地址59
 @Msg        要写入剪贴板的字符集
        @Msg        要写入剪贴板的字符集60
 */
    */61
 SetCopy    : function (Msg){
    SetCopy    : function (Msg){62
 if(navigator.userAgent.toLowerCase().indexOf('ie') > -1) {
        if(navigator.userAgent.toLowerCase().indexOf('ie') > -1) {63
 clipboardData.setData('Text',Msg);
            clipboardData.setData('Text',Msg);64
 alert ("网址“"+Msg+"”\n已经复制到您的剪贴板中\n您可以使用Ctrl+V快捷键粘贴到需要的地方");
            alert ("网址“"+Msg+"”\n已经复制到您的剪贴板中\n您可以使用Ctrl+V快捷键粘贴到需要的地方");65
 }
        }66
 else
        else 67
 {
        {68
 prompt("请复制网站地址:",Msg);
            prompt("请复制网站地址:",Msg); 69
 }
        }70
 },
    },71

72
 /*    加入收藏
    /*    加入收藏73
 @site        站点名称
        @site        站点名称74
 @url        地址
        @url        地址75
 */
    */76
 AddBookmark : function (site, url){
    AddBookmark : function (site, url){77
 if(navigator.userAgent.toLowerCase().indexOf('ie') > -1) {
        if(navigator.userAgent.toLowerCase().indexOf('ie') > -1) {78
 window.external.addFavorite(url,site)
            window.external.addFavorite(url,site)79
 } else if (navigator.userAgent.toLowerCase().indexOf('opera') > -1) {
        } else if (navigator.userAgent.toLowerCase().indexOf('opera') > -1) {80
 alert ("请使用Ctrl+T将本页加入收藏夹");
            alert ("请使用Ctrl+T将本页加入收藏夹");81
 } else {
        } else {82
 alert ("请使用Ctrl+D将本页加入收藏夹");
            alert ("请使用Ctrl+D将本页加入收藏夹");83
 }
        }84
 },
    },85

86
 /*    打开Url指定宽度和高度的窗口 */
    /*    打开Url指定宽度和高度的窗口 */87
 OpenWindows : function (url,width,height)
    OpenWindows : function (url,width,height)88
 {
    {89
 window.open(url,'newwin','width='+width+',height='+height);
        window.open(url,'newwin','width='+width+',height='+height);90
 return false;
        return false;91
 },
    },92

93
 /*    禁止浏览器的Javascript错误提示 */
    /*    禁止浏览器的Javascript错误提示 */94
 CloseError : function(){
    CloseError : function(){95
 window.onerror = function(){return true;};
        window.onerror = function(){return true;};96
 },
    },97

98
 /*    获取浏览器URL */
    /*    获取浏览器URL */99
 GetUrl : function(){
    GetUrl : function(){100
 return location.href;
        return location.href;101
 },
    },102

103
 /*    获取URL参数 */
    /*    获取URL参数 */104
 GetUrlParam : function(){
    GetUrlParam : function(){105
 return location.search;
        return location.search;106
 },
    },107
 
    108
 /*    获取页面来源 */
    /*    获取页面来源 */109
 GetFrom : function(){
    GetFrom : function(){110
 return document.referrer;
        return document.referrer;111
 },
    },112

113
 /*    获取指定的URL参数值
    /*    获取指定的URL参数值114
 @name        参数名
        @name        参数名115
 */
    */116
 Request : function(name){
    Request : function(name){117
 var GetUrl = this.GetUrl();
        var GetUrl = this.GetUrl();118
 var Plist = new Array();
        var Plist = new Array();119
 if(GetUrl.indexOf('?') > 0)
        if(GetUrl.indexOf('?') > 0)120
 {
        {121
 Plist = GetUrl.split('?')[1].split('&');
            Plist = GetUrl.split('?')[1].split('&');122
 }
        }123
 else if(GetUrl.indexOf('#') > 0)
        else if(GetUrl.indexOf('#') > 0)124
 {
        {125
 Plist = GetUrl.split('#')[1].split('&');
            Plist = GetUrl.split('#')[1].split('&');126
 }
        }127
 if (GetUrl.length > 0)
        if (GetUrl.length > 0)128
 {
        {129
 for(var i=0; i<Plist.length; i++)
            for(var i=0; i<Plist.length; i++)130
 {
            {131
 var GetValue = Plist[i].split('=');
                var GetValue = Plist[i].split('=');132
 if (GetValue[0].toUpperCase() == name.toUpperCase())
                if (GetValue[0].toUpperCase() == name.toUpperCase())133
 {
                {134
 return GetValue[1];
                    return GetValue[1];135
 break;
                    break;136
 }
                }137
 }
            }138
 return;
            return;139
 }
        }140
 },
    },141

142
 /*    直接将HTML写到新窗口
    /*    直接将HTML写到新窗口143
 @title        标题
        @title        标题144
 @msg        内容
        @msg        内容145
 */
    */146
 Popmsg : function PopIt(title,msg)
    Popmsg : function PopIt(title,msg)147
 {
    {148
 var popup = window.open('','popDialog','height=500,width=400,scrollbars=yes');
        var popup = window.open('','popDialog','height=500,width=400,scrollbars=yes');149
 popup.document.write('<html><title>'+title+'</title><style>body{margin:10px;font:13px Arial;}span{text-line:20px;}</style><body><span style=\'font:14px arial;\'>'+msg + '</span></body></html>');
        popup.document.write('<html><title>'+title+'</title><style>body{margin:10px;font:13px Arial;}span{text-line:20px;}</style><body><span style=\'font:14px arial;\'>'+msg + '</span></body></html>');150
 popup.document.close();
        popup.document.close();151
 }
    }152
 };
};153

154

155
 /// 对象操作
/// 对象操作156
 var Sams_object = {
var Sams_object = {157
 
    158
 /*    创建一个DIV对象
    /*    创建一个DIV对象159
 @ID            要创建的对象ID
        @ID            要创建的对象ID160
 @ClassName    创建对象的Class
        @ClassName    创建对象的Class161
 @SetValue    设置该对象值
        @SetValue    设置该对象值162
 @ToDiv        将对象追加到指定的对象,如指定的对象不存在,则追加在Body的后面
        @ToDiv        将对象追加到指定的对象,如指定的对象不存在,则追加在Body的后面163
 返回        创建后的对象
        返回        创建后的对象164
 */
    */165
 CreateDiv : function (ID,ClassName,SetValue,ToDiv){
    CreateDiv : function (ID,ClassName,SetValue,ToDiv){166
 var creatediv = document.createElement('div');
        var creatediv = document.createElement('div');167
 if(ID != null) creatediv.id = ID;
        if(ID != null) creatediv.id = ID;168
 creatediv.style.position = 'absolute';
        creatediv.style.position = 'absolute';169
 if(ClassName != null) creatediv.className = ClassName;
        if(ClassName != null) creatediv.className = ClassName;170
 if(this.Get(ToDiv))
        if(this.Get(ToDiv))171
 {
        {172
 this.Get(ToDiv).appendChild(creatediv);
            this.Get(ToDiv).appendChild(creatediv);173
 }
        }174
 else
        else175
 {
        {176
 document.getElementsByTagName('body')[0].appendChild(creatediv);
            document.getElementsByTagName('body')[0].appendChild(creatediv);177
 }
        }178
 this.SetValue(ID,SetValue);
        this.SetValue(ID,SetValue);179
 return this.Get(ID);
        return this.Get(ID);180
 },
    },181
 
    182
 /*    删除指定DIV对象
    /*    删除指定DIV对象183
 @objid        要删除的对象ID
        @objid        要删除的对象ID184
 返回        Bool 操作结果
        返回        Bool 操作结果185
 */
    */186
 DeleteDiv : function (objid)
    DeleteDiv : function (objid)187
 {
    {188
 try
        try189
 {
        {190
 if(this.Get(objid))
            if(this.Get(objid))191
 {
            {192
 var GetParent = this.Get(objid).parentNode;
                var GetParent = this.Get(objid).parentNode;193
 GetParent.removeChild(this.Get(objid));
                GetParent.removeChild(this.Get(objid));194
 return true;
                return true;195
 }
            }196
 else
            else197
 {
            {198
 return false;
                return false;199
 }
            }200
 }
        }201
 catch(e)
        catch(e)202
 {
        {203
 return false;
            return false;204
 }
        }205
 },
    },206

207
 /*    获取浏览器对象
    /*    获取浏览器对象208
 @id        要获取的对象ID
        @id        要获取的对象ID209
 可以使用对象名集合,返回值为对象的集合
        可以使用对象名集合,返回值为对象的集合210
 */
    */211
 Get : function (objid) {
    Get : function (objid) {212
 if (arguments.length > 1) {
        if (arguments.length > 1) {213
 for (var i = 0, objids = [], length = arguments.length; i < length; i++)
            for (var i = 0, objids = [], length = arguments.length; i < length; i++)214
 objids.push(this.Get(arguments[i]));
              objids.push(this.Get(arguments[i]));215
 return objids;
            return objids;216
 }
        }217
 if (typeof objid == 'string')
        if (typeof objid == 'string')218
 {
        {219
 if (document.getElementById) {
            if (document.getElementById) {220
 objid = document.getElementById(objid);
                objid = document.getElementById(objid);221
 } else if (document.all) {
            } else if (document.all) {222
 objid = document.all[objid];
                objid = document.all[objid];223
 } else if (document.layers) {
            } else if (document.layers) {224
 objid = document.layers[objid];
                objid = document.layers[objid];225
 }
            }226
 }
        }227
 return objid;
        return objid;228
 },
    },229
 
    230
 /*    获取对象的值
    /*    获取对象的值231
 @objid        对象ID
        @objid        对象ID232
 */
    */233
 GetValue : function (objid) {
    GetValue : function (objid) {234
 if (typeof objid == 'string')
        if (typeof objid == 'string')235
 {
        {236
 var getTagName = this.Get(objid).tagName.toLowerCase();
            var getTagName = this.Get(objid).tagName.toLowerCase();237
 if (getTagName == 'input' || getTagName == 'textarea' || getTagName == 'select')
            if (getTagName == 'input' || getTagName == 'textarea' || getTagName == 'select')238
 {
            {239
 return this.Get(objid).value;
                return this.Get(objid).value;240
 }
            }241
 else if (getTagName == 'div' || getTagName == 'span')
            else if (getTagName == 'div' || getTagName == 'span')242
 {
            {243
 return this.Get(objid).innerText;
                return this.Get(objid).innerText;244
 }
            }245
 }
        }246
 else if (typeof objid == 'object')
        else if (typeof objid == 'object')247
 {
        {248
 return objid.value;
            return objid.value;249
 }
        }250
 },
    },251

252
 /*    设置指定对象的值,实现可以直接赋值或清除操作
    /*    设置指定对象的值,实现可以直接赋值或清除操作253
 @objid        对象ID
        @objid        对象ID254
 @inserValue    传入值(可选项 Null:清除该ID的值, 则直接赋值)
        @inserValue    传入值(可选项 Null:清除该ID的值, 则直接赋值)255
 */
    */256
 SetValue: function(objid,inserValue) {
    SetValue: function(objid,inserValue) {257
 var getTagName = this.Get(objid).tagName.toLowerCase();
        var getTagName = this.Get(objid).tagName.toLowerCase();258
 if (inserValue == null) inserValue = '';
        if (inserValue == null) inserValue = '';259
 if (getTagName == 'input' || getTagName == 'textarea')
        if (getTagName == 'input' || getTagName == 'textarea')260
 {
        {261
 this.Get(objid).value = inserValue;
            this.Get(objid).value = inserValue;262
 }
        }263
 else if (getTagName == 'div' || getTagName == 'sapn')
        else if (getTagName == 'div' || getTagName == 'sapn')264
 {
        {265
 
            266
 this.Get(objid).innerText = inserValue;
            this.Get(objid).innerText = inserValue;267
 }
        }268
 },
    },269
 
    270
 /*    拷贝对象值到剪贴板
    /*    拷贝对象值到剪贴板  271
 @str        对象值
        @str        对象值272
 */
    */273
 CopyCode : function (str) {
    CopyCode : function (str) {274
 var rng = document.body.createTextRange();
        var rng = document.body.createTextRange();275
 rng.moveToElementText(str);
        rng.moveToElementText(str);276
 rng.scrollIntoView();
        rng.scrollIntoView();277
 rng.select();
        rng.select();278
 rng.execCommand("Copy");
        rng.execCommand("Copy");279
 rng.collapse(false);
        rng.collapse(false);280
 },
    },281
 
    282
 /*    显示隐藏一个对象
    /*    显示隐藏一个对象 283
 @Objid        对象ID
        @Objid        对象ID284
 @isshow        具体操作,指定Obj为False : none或者True : block (可选)
        @isshow        具体操作,指定Obj为False : none或者True : block (可选)285
 */
    */286
 ShowHidd : function(objid,isshow){
    ShowHidd : function(objid,isshow){287
 if (isshow != null)
        if (isshow != null)288
 {
        {289
 if(isshow)
            if(isshow)290
 {
            {291
 this.Get(objid).style.display = 'block';
                this.Get(objid).style.display = 'block';292
 }
            }293
 else
            else294
 {
            {295
 this.Get(objid).style.display = 'none';
                this.Get(objid).style.display = 'none';296
 }
            }297
 }
        }298
 else
        else299
 {
        {300
 if(this.Get(objid).style.display == 'none')
            if(this.Get(objid).style.display == 'none')301
 {
            {302
 this.Get(objid).style.display = 'block';
                this.Get(objid).style.display = 'block';303
 }
            }304
 else
            else305
 {
            {306
 this.Get(objid).style.display = 'none';
                this.Get(objid).style.display = 'none';307
 }
            }308
 }
        }309
 },
    },310
 
    311
 /*    当前对象是否可见
    /*    当前对象是否可见312
 @objid        对象ID
        @objid        对象ID313
 */
    */314
 IsVisible : function(objid){
    IsVisible : function(objid){315
 if(this.Get(objid))
        if(this.Get(objid))316
 {
        {317
 try
            try318
 {
            {319
 if (this.Get(objid).style.display == 'none')
                if (this.Get(objid).style.display == 'none')320
 {
                {321
 return false
                    return false322
 }
                }323
 if(this.Get(objid).style.visibility == 'hidden')
                if(this.Get(objid).style.visibility == 'hidden')324
 {
                {325
 return false;
                    return false;326
 }
                }327
 return true;
                return true;328
 }
            }329
 catch(e)
            catch(e)330
 {
            {331
 return false;
                return false;332
 }
            }333
 }
        }334
 else
        else335
 {
        {336
 return false;
            return false;337
 }
        }338
 }
    }339
 };
};340

341
 /// 字符处理
/// 字符处理342
 var Sams_string = {
var Sams_string = {343
 /*    取左边的指定长度的值
    /*    取左边的指定长度的值  344
 @str        要处理的字符集
        @str        要处理的字符集345
 @n            长度
        @n            长度346
 */
    */347
 Left : function (str,n)
    Left : function (str,n)348
 {
    {349
 if(str.length > 0)
        if(str.length > 0)350
 {
        {351
 if(n>str.length) n = str.length;
            if(n>str.length) n = str.length;352
 return str.substr(0,n)
            return str.substr(0,n)353
 }
        }354
 else
        else355
 {
        {356
 return;
         return;357
 }
        }358
 },
    },359
 
    360
 /*    取右边的指定长度的值
    /*    取右边的指定长度的值   361
 @str        要处理的字符集
        @str        要处理的字符集362
 @n            长度
        @n            长度363
 */
    */364
 Right : function (str,n)
    Right : function (str,n)365
 {
    {366
 if(str.length > 0)
        if(str.length > 0)367
 {
        {368
 if(n>=str.length) return str;
            if(n>=str.length) return str;369
 return str.substr(str.length-n,n);
            return str.substr(str.length-n,n);370
 }
        }371
 else
        else372
 {
        {373
 return;
            return;374
 }
        }375
 },
    },376
 
    377
 /*    Trim:清除两边空格
    /*    Trim:清除两边空格 378
 @str        要处理的字符集
        @str        要处理的字符集379
 */
    */380
 Trim : function (str)
    Trim : function (str) 381
 {
    {382
 if (typeof str == 'string') return str.replace(/(^\s*)|(\s*$)/g, '');
        if (typeof str == 'string') return str.replace(/(^\s*)|(\s*$)/g, '');383
 },
    },384

385
 /*    LTrim:清除左边的空格
    /*    LTrim:清除左边的空格 386
 @str        要处理的字符集
        @str        要处理的字符集387
 */
    */388
 Ltrim : function (str)
    Ltrim : function (str) 389
 {
    { 390
 if (typeof str == 'string') return str.replace(/(^\s*)/g, '');
        if (typeof str == 'string') return str.replace(/(^\s*)/g, '');391
 },
    },392

393
 /*    RTrim: 清除右边的空格
    /*    RTrim: 清除右边的空格 394
 @str        要处理的字符集
        @str        要处理的字符集395
 */
    */396
 Rtrim : function (str)
    Rtrim : function (str) 397
 {
    { 398
 if (typeof str == 'string') return str.replace(/(\s*$)/g, '');
        if (typeof str == 'string') return str.replace(/(\s*$)/g, '');399
 },
    },400
 
    401
 /*    清除前后的非字符
    /*    清除前后的非字符402
 @str        要处理的字符集
        @str        要处理的字符集403
 */
    */404
 strip : function(str) {
    strip : function(str) {405
 if (typeof str == 'string') return str.replace(/^\s+/, '').replace(/(^\s*)|(\s*$)/g, '');
        if (typeof str == 'string') return str.replace(/^\s+/, '').replace(/(^\s*)|(\s*$)/g, '');406
 },
    },407

408
 /*    过滤字符里面的HTML标签
    /*    过滤字符里面的HTML标签409
 @str        要处理的字符集
        @str        要处理的字符集410
 */
    */411
 stripTags : function(str) {
    stripTags : function(str) {412
 if (typeof str == 'string')return str.replace(/<\/?[^>]+>/gi, '').replace(/(^\s*)|(\s*$)/g, '');
        if (typeof str == 'string')return str.replace(/<\/?[^>]+>/gi, '').replace(/(^\s*)|(\s*$)/g, '');413
 }
    }414
 };
};415

416
 /// 时间相关操作
/// 时间相关操作417
 var Sams_time = {
var Sams_time = {418
 /*    获取当天日期 yyyy-MM-dd */
    /*    获取当天日期 yyyy-MM-dd */419
 GetDateNow : function (){
    GetDateNow : function (){420
 var d,y,m,dd;
        var d,y,m,dd;421
 d = new Date();
        d = new Date(); 422
 y = d.getYear();
        y = d.getYear();423
 m = d.getMonth() + 1;
        m = d.getMonth() + 1;424
 dd = d.getDate();
        dd = d.getDate();                                                425
 return y+"-"+m+"-"+dd;
        return y+"-"+m+"-"+dd;426
 },
    },427

428
 /*    获取指定日期后的特定天数的日期值
    /*    获取指定日期后的特定天数的日期值429
 @toDate        当前指定的日期
        @toDate        当前指定的日期430
 @N            要添加的日期数
        @N            要添加的日期数431
 */
    */ 432
 AddDays : function(toDate,N){
    AddDays : function(toDate,N){433
 var aDate=this._cvtISOToDate(toDate);
        var aDate=this._cvtISOToDate(toDate);434
 if (!aDate) return "";
        if (!aDate) return "";435
 var millis=86400000 * N;
        var millis=86400000 * N;436
 aDate=new Date(aDate.getTime()+millis);
        aDate=new Date(aDate.getTime()+millis);437
 return this._fmtDateISO(aDate);
        return this._fmtDateISO(aDate);438
 },
    },439
 _fmtDateISO : function (aDate) {
    _fmtDateISO : function (aDate) {440
 with (aDate) {
        with (aDate) {441
 var mm=getMonth()+1;
            var mm=getMonth()+1;442
 if (mm<10) {mm='0'+mm;}
            if (mm<10) {mm='0'+mm;}443
 var dd=getDate();
            var dd=getDate();444
 if (dd<10) {dd='0'+dd;}
            if (dd<10) {dd='0'+dd;}445
 return (getFullYear() + '-' + mm + '-' + dd);
            return (getFullYear() + '-' + mm + '-' + dd);446
 }
        }447
 },
    },448
 _cvtISOToDate : function (isoDate) {
    _cvtISOToDate : function (isoDate) {449
 var atomDate= isoDate.split('-');
        var atomDate= isoDate.split('-');450
 var aDate=new Date(parseInt(atomDate[0],10),parseInt(atomDate[1],10)-1,parseInt(atomDate[2],10),6,0,0);
        var aDate=new Date(parseInt(atomDate[0],10),parseInt(atomDate[1],10)-1,parseInt(atomDate[2],10),6,0,0);451
 return aDate;
        return aDate;452
 }
    }453
 };
};454

455
 /// 图像相关操作
/// 图像相关操作456
 var Sams_media = {
var Sams_media = {457
 /*    为单一图像添加鼠标中键放大缩小功能, 批量可以直接用 ResizeImage(指定添加该功能的图片大小:Int) 即可 (该功能只适用于IE)
    /*    为单一图像添加鼠标中键放大缩小功能, 批量可以直接用 ResizeImage(指定添加该功能的图片大小:Int) 即可 (该功能只适用于IE)458
 objid        对象ID
        objid        对象ID    459
 */
    */460
 ZoomFun : function(objid){
    ZoomFun : function(objid){461
 Sams_object.Get(objid).onmousewheel = function(){return Sams_media.imagecontrol(this);}
        Sams_object.Get(objid).onmousewheel = function(){return Sams_media.imagecontrol(this);}462
 },
    },463

464
 /*    重置图片尺寸同时添加放大功能 (该功能只适用于IE)
    /*    重置图片尺寸同时添加放大功能 (该功能只适用于IE) 465
 @IntSize    指定图像的大小
        @IntSize    指定图像的大小466
 如果适合图像大小就添加放大缩小功能
        如果适合图像大小就添加放大缩小功能467
 */
    */ 468
 ResizeImage: function (IntSize) {
    ResizeImage: function (IntSize) {469
 var imgsinlog=document.getElementsByTagName('img');
        var imgsinlog=document.getElementsByTagName('img');470
 for(j=0; j<imgsinlog.length; j++) {
        for(j=0; j<imgsinlog.length; j++) {471
 if (imgsinlog[j].width >= IntSize) {
            if (imgsinlog[j].width >= IntSize) {472
 imgsinlog[j].width = IntSize;
                imgsinlog[j].width = IntSize;473
 imgsinlog[j].style.cursor= 'pointer';
                imgsinlog[j].style.cursor= 'pointer';474
 imgsinlog[j].onclick = function() {window.open(this.src);}
                imgsinlog[j].onclick = function() {window.open(this.src);}475
 if (navigator.userAgent.toLowerCase().indexOf('ie') > -1) {
                if (navigator.userAgent.toLowerCase().indexOf('ie') > -1) {476
 imgsinlog[j].title = '您可以用鼠标中键或者使用Ctrl+鼠标滚轮缩放图片,点击图片可在新窗口打开';
                    imgsinlog[j].title = '您可以用鼠标中键或者使用Ctrl+鼠标滚轮缩放图片,点击图片可在新窗口打开';477
 imgsinlog[j].onmousewheel = function(){return Sams_media.imagecontrol(this);};
                    imgsinlog[j].onmousewheel = function(){return Sams_media.imagecontrol(this);};478
 }
                }479
 else
                else480
 {
                {481
 imgsinlog[j].title = '点击图片可在新窗口打开';
                    imgsinlog[j].title = '点击图片可在新窗口打开';482
 }
                }483
 }
            }484
 }
        }485
 },
    },486
 imagecontrol : function(obj){
    imagecontrol : function(obj){487
 var zoom=parseInt(obj.style.zoom, 10)||100;zoom+=event.wheelDelta/12;
        var zoom=parseInt(obj.style.zoom, 10)||100;zoom+=event.wheelDelta/12;488
 if (zoom>0) obj.style.zoom=zoom+'%';
        if (zoom>0) obj.style.zoom=zoom+'%';489
 return false;
        return false;490
 },
    },491

492
 /*    如果图像出现下载不了等异常,显示的错误提示图片
    /*    如果图像出现下载不了等异常,显示的错误提示图片493
 @errimgpath    显示错误提示的图像路径
        @errimgpath    显示错误提示的图像路径494
 */
    */ 495
 ImagesError : function(errimgpath){
    ImagesError : function(errimgpath){496
 var imglist = document.getElementsByTagName('img');
        var imglist = document.getElementsByTagName('img');497
 for(j=0; j<imglist.length; j++) {
        for(j=0; j<imglist.length; j++) {498
 imglist[j].onerror = function(){
            imglist[j].onerror = function(){499
 this.src = errimgpath;
                this.src = errimgpath;500
 }
            }501
 }
        }502
 },
    },503

504
 /*    显示媒体
    /*    显示媒体505
 @mFile        文件路径
        @mFile        文件路径506
 @mFileType    文件类型(可为空,如为Flash,要指定为swf类型)
        @mFileType    文件类型(可为空,如为Flash,要指定为swf类型)507
 @ObjID        对象ID
        @ObjID        对象ID508
 @mWidth        显示的对象宽度
        @mWidth        显示的对象宽度509
 @mHeight    显示对象的高度
        @mHeight    显示对象的高度510
 注: 可以指定对象的ID, 如果ID不存在,会自动创建,追加在Body后面
        注: 可以指定对象的ID, 如果ID不存在,会自动创建,追加在Body后面511
 */
    */512
 ShowMedia : function (mFile, mFileType, ObjID, mWidth, mHeight) {
    ShowMedia : function (mFile, mFileType, ObjID, mWidth, mHeight) {513
 var mediaStr;
        var mediaStr;514
 switch(mFileType){
        switch(mFileType){515
 case "swf":
            case "swf":516
 mediaStr="<object codeBase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0' classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' width='"+mWidth+"' height='"+mHeight+"'><param name='movie' value='"+mFile+"'><param name='quality' value='high'><param name='AllowScriptAccess' value='never'><embed src='"+mFile+"' quality='high' pluginspage='http://www.macromedia.com/go/getflashplayer' type='application/x-shockwave-flash' width='"+mWidth+"' height='"+mHeight+"'></embed></OBJECT>";
                mediaStr="<object codeBase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0' classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' width='"+mWidth+"' height='"+mHeight+"'><param name='movie' value='"+mFile+"'><param name='quality' value='high'><param name='AllowScriptAccess' value='never'><embed src='"+mFile+"' quality='high' pluginspage='http://www.macromedia.com/go/getflashplayer' type='application/x-shockwave-flash' width='"+mWidth+"' height='"+mHeight+"'></embed></OBJECT>";517
 break;
                break;518
 default :
            default :519
 mediaStr="<object width='"+mWidth+"' height='"+mHeight+"' classid='CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6'><param name='url' value='"+mFile+"' /><embed width='"+mWidth+"' height='"+mHeight+"' type='application/x-mplayer2' src='"+mFile+"'></embed></object>";
                mediaStr="<object width='"+mWidth+"' height='"+mHeight+"' classid='CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6'><param name='url' value='"+mFile+"' /><embed width='"+mWidth+"' height='"+mHeight+"' type='application/x-mplayer2' src='"+mFile+"'></embed></object>";520
 }
        }521
 
        522
 var mediaDiv = Sams_object.Get(ObjID);
        var mediaDiv = Sams_object.Get(ObjID);523
 
        524
 if (mediaDiv) {
        if (mediaDiv) {525
 mediaDiv.innerHTML = mediaStr;
            mediaDiv.innerHTML = mediaStr;526
 }
        } 527
 else
        else528
 {
        {529
 mediaDiv = document.createElement("div");
            mediaDiv = document.createElement("div");530
 mediaDiv.id = ObjID;
            mediaDiv.id = ObjID;531
 mediaDiv.innerHTML = mediaStr;
            mediaDiv.innerHTML = mediaStr;532
 document.getElementsByTagName('body')[0].appendChild(mediaDiv);
            document.getElementsByTagName('body')[0].appendChild(mediaDiv);533
 }
        }534
 return false;
        return false;535
 }
    }536
 };
};537

538
 /// 样式相关操作
/// 样式相关操作539
 var Sams_style = {
var Sams_style = {540
 /*    改变字体大小
    /*    改变字体大小541
 @objid        对象ID
        @objid        对象ID542
 @size        字号
        @size        字号543
 */
    */544
 doZoom : function (objid,size){
    doZoom : function (objid,size){545
 Sams_object.Get(objid).style.fontSize=size+'px';
        Sams_object.Get(objid).style.fontSize=size+'px';546
 },
    },547

548
 /*    改变指定对象样式
    /*    改变指定对象样式549
 @objid        对象ID
        @objid        对象ID550
 @className    要更改的ClassName
        @className    要更改的ClassName551
 */
    */552
 ClassName: function(objid, className) {
    ClassName: function(objid, className) {553
 Sams_object.Get(objid).className = className;
        Sams_object.Get(objid).className = className;554
 },
    },555
 
    556
 /*    对象定位
    /*    对象定位557
 @obj        要定位的对象
        @obj        要定位的对象558
 返回        X.Y 结果的数组对象
        返回        X.Y 结果的数组对象559
 */
    */560
 GotoXY : function (obj) {
    GotoXY : function (obj) {561
 var t=obj.offsetTop;
        var t=obj.offsetTop; 562
 var l=obj.offsetLeft;
        var l=obj.offsetLeft; 563
 while(obj=obj.offsetParent){
        while(obj=obj.offsetParent){ 564
 t+=obj.offsetTop;
            t+=obj.offsetTop; 565
 l+=obj.offsetLeft;
            l+=obj.offsetLeft; 566
 }
        }567
 return Array(t,l);
        return Array(t,l);568
 }
    }569
 };
};570

571
 /// 科学计算
/// 科学计算572
 var Sams_account = {
var Sams_account = {573
 /*    逢1进10计算
    /*    逢1进10计算574
 @ 数值
        @ 数值575
 */
    */576
 GetTen: function (i)
    GetTen: function (i)577
 {
    {578
 var items_One,Get_One;
        var items_One,Get_One;579
 if (i.length > 1&& (/^\d+$/.test(i)))
        if (i.length > 1&& (/^\d+$/.test(i)))580
 {
        {581
 items_One = i.substr(0,i.length-1);
           items_One = i.substr(0,i.length-1);582
 Get_One = i.substr(i.length-1,1);
           Get_One = i.substr(i.length-1,1);583
 if (parseInt(Get_One)>0)
           if (parseInt(Get_One)>0)584
 {
           {585
 items_One = parseInt(items_One)+1;
            items_One = parseInt(items_One)+1;586
 items_One = items_One + '0';
            items_One = items_One + '0';587
 }
           }588
 else
           else589
 {
            {590
 items_One = items_One + '0';
            items_One = items_One + '0';    591
 }
            }592
 }
        }593
 else
        else594
 {
        {595
 items_One = i;
            items_One = i;596
 }
        }597
 return items_One;
        return items_One;598
 }
    }599
 };
};600

601
 /// 数据验证(所有数值返回值均为Bool型)
/// 数据验证(所有数值返回值均为Bool型)602
 var Sams_validate = {
var Sams_validate = {603
 /*    是否是数字型数据
    /*    是否是数字型数据604
 @str        字符集
        @str        字符集605
 */
    */606
 IsNumber : function(str){
    IsNumber : function(str){607
 if (/^\d+$/.test(str)){return true;}else{return false;}
        if (/^\d+$/.test(str)){return true;}else{return false;}608
 },
    },609

610
 /*    是否是数字型数据
    /*    是否是数字型数据611
 @objid        对象ID
        @objid        对象ID612
 */
    */613
 IsNumberObj : function(objid){
    IsNumberObj : function(objid){614
 return this.IsNumber(Sams_object.GetValue(objid));
        return this.IsNumber(Sams_object.GetValue(objid));615
 },
    },616

617
 /*    是否是自然数型数据
    /*    是否是自然数型数据618
 @str        字符集
        @str        字符集619
 */
    */620
 IsInt : function(str){
    IsInt : function(str){621
 if (/^(\+|-)?\d+$/.test(str)){return true;}else{return false;}
        if (/^(\+|-)?\d+$/.test(str)){return true;}else{return false;}622
 },
    },623

624
 /*    是否是自然数型数据
    /*    是否是自然数型数据625
 @objid        对象ID
        @objid        对象ID626
 */
    */627
 IsIntObj : function(objid){
    IsIntObj : function(objid){628
 return this.IsInt(Sams_object.GetValue(objid));
        return this.IsInt(Sams_object.GetValue(objid));629
 },
    },630
 
    631
 /*    是否是中文字符
    /*    是否是中文字符632
 @str        字符集
        @str        字符集633
 */
    */634
 IsChinese : function(str)
    IsChinese : function(str)635
 {
    {636
 if (/^[\u4e00-\u9fa5]+$/.test(str)){return true;}else{return false;}
        if (/^[\u4e00-\u9fa5]+$/.test(str)){return true;}else{return false;}637
 },
    },638

639
 /*    是否是中文字符
    /*    是否是中文字符640
 @objid        对象ID
        @objid        对象ID641
 */
    */642
 IsChineseObj : function(objid)
    IsChineseObj : function(objid)643
 {
    {644
 return this.IsChinese(Sams_object.GetValue(objid));
        return this.IsChinese(Sams_object.GetValue(objid));645
 },
    },646

647
 /*    是否为英文字母
    /*    是否为英文字母648
 @str        字符集
        @str        字符集649
 */
    */650
 IsLower : function(str)
    IsLower : function(str)651
 {
    {652
 if (/^[A-Za-z]+$/.test(str)){return true}else{return false;}
         if (/^[A-Za-z]+$/.test(str)){return true}else{return false;}653
 },
    },654

655
 /*    是否为英文字母
    /*    是否为英文字母656
 @objid        对象ID
        @objid        对象ID657
 */
    */658
 IsLowerObj : function(objid)
    IsLowerObj : function(objid)659
 {
    {660
 return this.IsLower(Sams_object.GetValue(objid));
         return this.IsLower(Sams_object.GetValue(objid));661
 },
    },662

663
 /*    是否为正确的网址
    /*    是否为正确的网址664
 @str        字符集
        @str        字符集665
 */
    */666
 IsUrl : function(str)
    IsUrl : function(str)667
 {
    {668
 var myReg = /^((http:[/][/])?\w+([.]\w+|[/]\w*)*)?$/;
        var myReg = /^((http:[/][/])?\w+([.]\w+|[/]\w*)*)?$/;    669
 if(myReg.test(str)){return true;}else{return false;}
        if(myReg.test(str)){return true;}else{return false;}670
 },
    },671

672
 /*    是否为正确的网址
    /*    是否为正确的网址673
 @objid        对象ID
        @objid        对象ID674
 */
    */675
 IsUrlObj : function(objid)
    IsUrlObj : function(objid)676
 {
    {677
 return this.IsUrl(Sams_object.GetValue(objid));
        return this.IsUrl(Sams_object.GetValue(objid));678
 },
    },679

680
 /*    是否为正确的Email形式
    /*    是否为正确的Email形式681
 @str        字符集
        @str        字符集682
 */
    */683
 IsEmail : function(str)
    IsEmail : function(str)684
 {
    {685
 var myReg = /^([-_A-Za-z0-9\.]+)@([_A-Za-z0-9]+\.)+[A-Za-z0-9]{2,3}$/;
        var myReg = /^([-_A-Za-z0-9\.]+)@([_A-Za-z0-9]+\.)+[A-Za-z0-9]{2,3}$/;    686
 if(myReg.test(str)){return true;}else{return false;}
        if(myReg.test(str)){return true;}else{return false;}687
 },
    },688
 
    689
 
    690
 /*    是否为正确的Email形式
    /*    是否为正确的Email形式691
 @objid        对象ID
        @objid        对象ID692
 */
    */693
 IsEmailObj : function(objid)
    IsEmailObj : function(objid)694
 {
    {695
 return this.IsEmail(Sams_object.GetValue(objid));
        return this.IsEmail(Sams_object.GetValue(objid));696
 },
    },697

698
 /*    是否为正确的手机号码
    /*    是否为正确的手机号码699
 @str        字符集
        @str        字符集700
 */
    */701
 IsMobile : function(str)
    IsMobile : function(str)702
 {
    {703
 var regu =/(^[1][3][0-9]{9}$)|(^0[1][3][0-9]{9}$)/;
        var regu =/(^[1][3][0-9]{9}$)|(^0[1][3][0-9]{9}$)/;   704
 var re = new RegExp(regu);
        var re = new RegExp(regu);   705
 if (re.test(str)){return true;}else{return false;}
        if (re.test(str)){return true;}else{return false;}706
 },
    },707

708
 /*    是否为正确的手机号码
    /*    是否为正确的手机号码709
 @objid        对象ID
        @objid        对象ID710
 */
    */711
 IsMobileObj : function(objid)
    IsMobileObj : function(objid)712
 {
    {713
 return this.IsMobile(Sams_object.GetValue(objid));
        return this.IsMobile(Sams_object.GetValue(objid));714
 }
    }715
 };
};716

717
 /*
/*718
 实现Ajax功能
    实现Ajax功能719
 Sams_ajax.SendRequest('GET', url, null, recall, "addtohome");
    Sams_ajax.SendRequest('GET', url, null, recall, "addtohome");720
 Sams_ajax.SendRequest('GET', url, null, null);
    Sams_ajax.SendRequest('GET', url, null, null);721
 obj.responseText;
    obj.responseText;722
 */
*/723
 var Sams_ajax = {
var Sams_ajax = {724
 _objPool: [],
    _objPool: [],725
 _getInstance: function (){
    _getInstance: function (){726
 for (var i = 0; i < this._objPool.length; i ++){
        for (var i = 0; i < this._objPool.length; i ++){727
 if (this._objPool[i].readyState == 0 || this._objPool[i].readyState == 4){
            if (this._objPool[i].readyState == 0 || this._objPool[i].readyState == 4){728
 return this._objPool[i];
                return this._objPool[i];729
 }
            }730
 }
        }731
 this._objPool[this._objPool.length] = this._createObj();
        this._objPool[this._objPool.length] = this._createObj();732
 return this._objPool[this._objPool.length - 1];
        return this._objPool[this._objPool.length - 1];733
 },
    },734
 _createObj : function (){
     _createObj : function (){735
 if (window.XMLHttpRequest){
        if (window.XMLHttpRequest){736
 var objXMLHttp = new XMLHttpRequest();
            var objXMLHttp = new XMLHttpRequest();737
 }
        }738
 else{
        else{739
 var MSXML = ['MSXML2.XMLHTTP.5.0', 'MSXML2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP', 'Microsoft.XMLHTTP'];
            var MSXML = ['MSXML2.XMLHTTP.5.0', 'MSXML2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP', 'Microsoft.XMLHTTP'];740
 for(var n = 0; n < MSXML.length; n ++){
            for(var n = 0; n < MSXML.length; n ++){741
 try{
                try{742
 var objXMLHttp = new ActiveXObject(MSXML[n]);
                    var objXMLHttp = new ActiveXObject(MSXML[n]);743
 break;
                    break;744
 }
                }745
 catch(e){
                catch(e){746
 }
                }747
 }
            }748
 }
         }          749
 if (objXMLHttp.readyState == null){
        if (objXMLHttp.readyState == null){750
 objXMLHttp.readyState = 0;
            objXMLHttp.readyState = 0;751
 objXMLHttp.addEventListener("load", function (){
            objXMLHttp.addEventListener("load", function (){752
 objXMLHttp.readyState = 4;
                    objXMLHttp.readyState = 4;753
 if (typeof objXMLHttp.onreadystatechange == "function"){
                    if (typeof objXMLHttp.onreadystatechange == "function"){754
 objXMLHttp.onreadystatechange();
                        objXMLHttp.onreadystatechange();755
 }
                    }756
 },  false);
                },  false);757
 }
        }758
 return objXMLHttp;
        return objXMLHttp;759
 },
    },760

761
 /// 开始发送请求
    /// 开始发送请求762
 SendRequest : function (method, url, data, callback,funparam,funparam2){
    SendRequest : function (method, url, data, callback,funparam,funparam2){763
 var objXMLHttp = this._getInstance();
        var objXMLHttp = this._getInstance();764
 with(objXMLHttp){
        with(objXMLHttp){765
 try{
            try{766
 if (url.indexOf("?") > 0){
                if (url.indexOf("?") > 0){767
 url += "&randnum=" + Math.random();
                    url += "&randnum=" + Math.random();768
 }
                }769
 else{
                else{770
 url += "?randnum=" + Math.random();
                    url += "?randnum=" + Math.random();771
 }
                }772
 open(method, url, true);
                open(method, url, true);            773
 setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
                setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');774
 send(data);
                send(data);775
 onreadystatechange = function (){
                onreadystatechange = function (){776
 if (objXMLHttp.readyState == 4 && (objXMLHttp.status == 200 || objXMLHttp.status == 304))
                    if (objXMLHttp.readyState == 4 && (objXMLHttp.status == 200 || objXMLHttp.status == 304))777
 {
                    {778
 callback(objXMLHttp,funparam,funparam2);
                        callback(objXMLHttp,funparam,funparam2);779
 }else{
                    }else{780
 callback(null,funparam,funparam2);
                        callback(null,funparam,funparam2);781
 }
                    }782
 }
                }783
 }
            }784
 catch(e){
            catch(e){785
 alert(e);
                alert(e);786
 }
            }787
 }
        }788
 }
    }789
 };
};790

791
 /// Cookies操作
/// Cookies操作792
 var Sams_cookies = {
var Sams_cookies = {793
 /*    cookies设置函数
    /*    cookies设置函数794
 @name        Cookies名称
        @name        Cookies名称795
 @value        值
        @value        值796
 */
    */797
 setCookie : function (name, value)
    setCookie : function (name, value)798
 {
    {799
 try
        try800
 {
        {801
 var argv = setCookie.arguments;
            var argv = setCookie.arguments;802
 var argc = setCookie.arguments.length;
            var argc = setCookie.arguments.length;803
 var expires = (argc > 2) ? argv[2] : null;
            var expires = (argc > 2) ? argv[2] : null;804
 if(expires!=null)
            if(expires!=null)805
 {
            {806
 var LargeExpDate = new Date ();
                var LargeExpDate = new Date ();807
 LargeExpDate.setTime(LargeExpDate.getTime() + (expires*1000*3600*24));
                LargeExpDate.setTime(LargeExpDate.getTime() + (expires*1000*3600*24));808
 }
            }809
 document.cookie = name + "=" + escape (value)+((expires == null) ? "" : ("; expires=" +LargeExpDate.toGMTString()));
            document.cookie = name + "=" + escape (value)+((expires == null) ? "" : ("; expires=" +LargeExpDate.toGMTString()));810
 return true;
            return true;811
 }
        }812
 catch(e)
        catch(e)813
 {
        {814
 return false;
            return false;815
 }
        }816
 },
    },817

818
 /*    cookies读取函数
    /*    cookies读取函数819
 @Name        Cookies名称
        @Name        Cookies名称820
 返回值        Cookies值
        返回值        Cookies值821
 */
    */822
 getCookie : function (Name)
    getCookie : function (Name)823
 {
    {824
 var search = Name + "="
        var search = Name + "="825
 if(document.cookie.length > 0)
        if(document.cookie.length > 0) 826
 {
        {827
 offset = document.cookie.indexOf(search)
            offset = document.cookie.indexOf(search)828
 if(offset != -1)
            if(offset != -1) 829
 {
            {830
 offset += search.length
                offset += search.length831
 end = document.cookie.indexOf(";", offset)
                end = document.cookie.indexOf(";", offset)832
 if(end == -1) end = document.cookie.length
                if(end == -1) end = document.cookie.length833
 return unescape(document.cookie.substring(offset, end))
                return unescape(document.cookie.substring(offset, end))834
 }
            }835
 else
            else836
 {
            {837
 return;
                return;838
 }
            }839
 }
        }840
 }
    }841
 };
}; 
                     
                    
                 
                    
                

 
   
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号