以下是引用片段:
snap_preview_added="no">操作系统。
var detect = navigator.userAgent.toLowerCase();
var OS,browser,version,total,thestring;
function getBrowserInfo() {
if (checkIt(´konqueror´)) {
browser = "Konqueror";
OS = "html" class="wordstyle">asp?typeid=60" snap_preview_added="no">Linux";
}
else if (checkIt(´safari´)) browser = "Safari"
else if (checkIt(´omniWeb´)) browser = "OmniWeb"
else if (checkIt(´opera´)) browser = "Opera"
else if (checkIt(´Webtv´)) browser = "WebTV";
else if (checkIt(´icab´)) browser = "iCab"
else if (checkIt(´msie´)) browser = "Internet Explorer"
else if (!checkIt(´compatible´)) {
browser = "Netscape Navigator"
version = detect.charAt(8);
}
else browser = "An unknown browser";
if (!version) version = detect.charAt(place + thestring.length);
if(!OS) {
if (checkIt(´linux´)) OS = "Linux";
else if (checkIt(´x11´)) OS = "Unix";
else if (checkIt(´mac´)) OS = "Mac"
else if (checkIt(´win´)) OS = "Windows"
else OS = "an unknown operating system";
}
}
function checkIt(string) {
place = detect.indexOf(string) + 1;
thestring = string;
return place;
}
下面看一下网页加载时需要添加的方法。有关网页加载和初始化方法代码如下:
//网页加载调用initialize和getBrowserInfo方法
Event.observe(window, ´load´, initialize, false);
Event.observe(window, ´load´, getBrowserInfo, false);
//未加载时清空缓存
Event.observe(window, ´unload´, Event.unloadCache, false);
//初始化方法
function initialize(){
//调用该方法为该页添加覆盖层和高亮显示层
addLightboxMarkup();
//为每个可高亮显示的元素创建lightbox对象
lbox = document.getElementsByClassName(´lbOn´);
for(i = 0; i < lbox.length; i++) {
valid = new lightbox(lbox[i]);
}
}
// 使用Dom方法创建覆盖层和高亮层
function addLightboxMarkup() {
bod = document.getElementsByTagName(´body´)[0];
overlay = document.createElement(´div´);
overlay.id = ´overlay´;
lb = document.createElement(´div´);
lb.id = ´lightbox´;
lb.className = ´loading´;
lb.innerHTML = ´
´;
bod.appendChild(overlay);
bod.appendChild(lb);
}
封装lightbox类
初始化数据时,为每个可高亮显示的链接创建了lightbox对象。该类的代码具体实现如下:
var lightbox = Class.create();
lightbox.prototype = {
yPos : 0,
xPos : 0,
//构造方法,ctrl为创建该对象的元素
initialize: function(ctrl) {
//将该元素的链接赋值给this.content
this.content = ctrl.href;
//为该元素添加onclick事件activate方法
Event.observe(ctrl, ´click´, this.activate.bindAsEventListener(this), false);
ctrl.onclick = function(){return false;};
},
//当单击链接时
activate: function(){
if (browser == ´Internet Explorer´){//判断为IE浏览器
this.getScroll();
this.prepareIE(´100%´, ´hidden´);
this.setScroll(0,0);
this.hideSelects(´hidden´);//隐藏所有的
