java页面左右飘窗_左右飘窗代码研读
var browser={
ie6:function(){return((window.XMLHttpRequest==undefined)&&(ActiveXObject!=undefined))
},
getWindow:function(){var myHeight=0;var myWidth=0;if(typeof(window.innerWidth)==‘number‘){
myHeight=window.innerHeight;
myWidth=window.innerWidth
}else if(document.documentElement){
myHeight=document.documentElement.clientHeight;
myWidth=document.documentElement.clientWidth
}else if(document.body){
myHeight=document.body.clientHeight;
myWidth=document.body.clientWidth
}return{‘height‘:myHeight,‘width‘:myWidth}
},
getScroll:function(){var myHeight=0;var myWidth=0;if(typeof(window.pageYOffset)==‘number‘){
myHeight=window.pageYOffset;
myWidth=window.pageXOffset
}else if(document.documentElement){
myHeight=document.documentElement.scrollTop;
myWidth=document.documentElement.scrollLeft
}else if(document.body){
myHeight=document.body.scrollTop;
myWidth=document.body.scrollLeft
}return{‘height‘:myHeight,‘width‘:myWidth}
},
getDocWidth:function(D){if(!D)var D=document;returnMath.max(Math.max(D.body.scrollWidth,D.documentElement.scrollWidth),Math.max(D.body.offsetWidth,D.documentElement.offsetWidth),Math.max(D.body.clientWidth,D.documentElement.clientWidth))
},
getDocHeight:function(D){if(!D)var D=document;returnMath.max(Math.max(D.body.scrollHeight,D.documentElement.scrollHeight),Math.max(D.body.offsetHeight,D.documentElement.offsetHeight),Math.max(D.body.clientHeight,D.documentElement.clientHeight))
}
};
browser对象内:
ie6:ActiveXObject是ie浏览器的标志,window.XMLHttpRequest是IE7以前的创建XMLHttpRequest对象的方式,双重判定ie6.getWindow: 获取浏览器宽高,window.innerWidth是netscape属性,部分浏览器可以通过此获取到浏览器宽高,document.documentElement是文档的根节点也是火狐等可以获取宽高的途径,document.body是文档的body子节点也是谷歌浏览器等可以获取宽高的途径,三种判定达到主流兼容。
getScroll: 获取浏览器被卷去的宽高,window.pageYOffset是netscape属性,老浏览器可以通过此获取到卷曲的宽高,document.documentElement是文档的根节点也是火狐等可以获取宽高的途径,document.body是文档的body子节点也是谷歌浏览器等可以获取宽高的途径,三种判定达到主流兼容。
getDocWidth: 获取文档宽,通过判定scrollWidth,offsetWidth,clientWidth在documentElement与body两种节点下的最宽最高高度来决定。
getDocHeight: 获取文档高,通过判定scrollWidth,offsetWidth,clientWidth在documentElement与body两种节点下的最宽最高高度来决定。
var dom={
ID:function(id){var type=typeof(id);if(type==‘object‘)returnid;if(type==‘string‘)returndocument.getElementById(id);return null},
insertHtml:function(html){var frag=document.createDocumentFragment();var div=document.createElement("div");
div.innerHTML=html;for(var i=0,ii=div.childNodes.length;i
frag.appendChild(div.childNodes[i])
}
document.body.insertBefore(frag,document.body.firstChild)
}
};
dom对象内:
id:获取对象的id名
insertHtml: 插入html的动作,输入html代码,在body后append要加入的内容
var myEvent={
add:function(element,type,handler){var ele=dom.ID(element);if(!ele)return;if(ele.addEventListener)
ele.addEventListener(type,handler,false);else if(ele.attachEvent)
ele.attachEvent("on"+type,handler);else ele["on"+type]=handler
},
remove:function(element,type,handler){var ele=dom.ID(element);if(!ele)return;if(ele.removeEventListener)
ele.removeEventListener(type,handler,false);else if(ele.detachEvent)
ele.detachEvent("on"+type,handler);else ele["on"+type]=null}
};
myEvent对象:
add:绑定监听事件,addEventListener和attachEvent,前者是W3C的js绑定事件标准,后者是IE浏览器的js绑定事件标准,如果两者都不符合,老浏览器类型的话,用传统绑定方式。
remove:解绑监听事件,removeEventListener和detachEvent,前者是W3C的js解绑事件标准,后者是IE浏览器的js解绑事件标准,如果两者都不符合,老浏览器类型的话,用传统绑定方式。
var position={
rightCenter:function(id){var id=dom.ID(id);var ie6=browser.ie6();var win=browser.getWindow();var ele={‘height‘:id.clientHeight,‘width‘:id.clientWidth
};if(ie6){var scrollBar=browser.getScroll()
}else{var scrollBar={‘height‘:0,‘width‘:0};
id.style.position=‘fixed‘}
ele.top=parseInt((win.height-ele.height)/2+scrollBar.height);
id.style.top=ele.top+‘px‘;
id.style.right=‘3px‘},
floatRightCenter:function(id){
position.rightCenter(id);var fun=function(){
position.rightCenter(id)
};if(browser.ie6()){
myEvent.add(window,‘scroll‘,fun);
myEvent.add(window,‘resize‘,fun)
}else{
myEvent.add(window,‘resize‘,fun)
}
},
leftCenter:function(id){var id=dom.ID(id);var ie6=browser.ie6();var win=browser.getWindow();var ele={‘height‘:id.clientHeight,‘width‘:id.clientWidth
};if(ie6){var scrollBar=browser.getScroll()
}else{var scrollBar={‘height‘:0,‘width‘:0};
id.style.position=‘fixed‘}
ele.top=parseInt((win.height-ele.height)/2+scrollBar.height);
id.style.top=ele.top+‘px‘;
id.style.left=‘3px‘},
floatLeftCenter:function(id){
position.leftCenter(id);var fun=function(){
position.leftCenter(id)
};if(browser.ie6()){
myEvent.add(window,‘scroll‘,fun);
myEvent.add(window,‘resize‘,fun)
}else{
myEvent.add(window,‘resize‘,fun)
}
}
};
position对象:
rightCenter: 右侧飘窗,绑定右侧飘窗的参数,目前写法是飘窗位于浏览器的居中处
floatRightCenter: 窗口滚动或者放缩后触发rightCenter
leftCenter: 左侧飘窗,绑定左侧飘窗的参数,目前写法是飘窗位于浏览器的居中处
floatLeftCenter: 窗口滚动或者放缩后触发leftCenter
functionad_left(){varhtml;
html= ‘
‘;
dom.insertHtml(html);
position.floatLeftCenter(‘ad_left‘);
}functionad_right(){varhtml;
html= ‘
‘;
dom.insertHtml(html);
position.floatRightCenter(‘ad_right‘);
}
myEvent.add(window,‘load‘,ad_left);
myEvent.add(window,‘load‘,ad_right);
ad_left: 左侧广告所有内容参数及操作。
ad_right: 右侧广告所有内容参数及操作。
最后是调用ad_left与ad_right方法。
原文:http://www.cnblogs.com/storee/p/3919989.html
java页面左右飘窗_左右飘窗代码研读相关推荐
- java动态执行逻辑_动态执行代码逻辑
动态执行逻辑的方法据我所知有一下两种方式 QLExpress Groovy QLExpress QLExpress是阿里开源的动态脚本执行的项目. 由阿里的电商业务规则.表达式(布尔组合).特殊数学公 ...
- 怎么查看java的引用类_一段代码看 Java 引用类型
Java 中的操作数(不知道叫什么,相对于 bytecode 而言,类似 CPU 的操作码和操作数)分为值类型和引用类型: 值类型就是直接存储最终数值的,如 char, int, float, dou ...
- java注释搞笑图案_搞笑的代码注释,那些有趣的程序员
发表于 2019-04-24 16:11:26 by 月小升 搞笑 /*** * .::::. * .::::::::. * ::::::::::: F*CK YOU * ..:::::::::::' ...
- java 编码 正弦计算器_计算器完整代码(java).doc
计算器完整代码(java) 1. Calculator 类 import java.applet.*; import java.awt.*; import java.awt.event.*; impo ...
- java实现防盗链_防盗链代码实现
[java]代码库package pm_cn.itcast.request; import java.io.IOException; import javax.servlet.ServletExcep ...
- java 页面接收参数_详解SpringMVC——接收请求参数和页面传参
spring接收请求参数: 1,使用HttpServletRequest获取 @RequestMapping("/login.do") public String login(Ht ...
- java 页面级缓存_用CashFilter实现页面级缓存实践
1.MySQL在本地localhost的test数据库 建person表,暂以字段id,name,passWord ,表中可输入一行值. 2.建类 DAOUtil import java.sql.C ...
- 用java制作图片滚动条_写给代码小白:运用JavaScirpt实现大图滚动
在大家平时浏览网页时,一定经常看到许多首页都会布置一些精美.酷炫的带有滚动效果的图片,使网站更具有吸引力(如图).今天给大家分享一些简单的运用H5和css3的内容配合原生JS来实现大图滚动的方法.(由 ...
- java 判断手机访问_下面java代码判断是手机访问还是PC访问什么地方出错了,手机跳转不到制定页面,等待解答...
最近在做一个项目,要在判断用户是否是通过手机访问网站的,如果是手机访问网站跳到一个登录页面,如果是用户用电脑访问网站跳到另外一个登录页面.我写了以下代码,但是用手机访问网站的时候,跳转不到制定页面,请 ...
- 用java的io做一个代码计数器,如何制作Java页面计数器_java
大庆采油六厂采油工艺研究所 王兵 王波 常常逛WWW的人,一定对许多起始页上的计数器感兴趣.每当你光临某个站点的起始页时,它的计数器就很亲切地告诉你,从某年某月某日开始,你是第几位光临的人.你可能也想 ...
最新文章
- Linux(CentOS)目录操作命令、文件操作命令、压缩解压缩命令
- 网页编辑html中怎么写搜索代码,如何在html页面中实现查找功能
- c1083 “tensorflow/python/framework/c pp_shape_inference.pb.h”
- PHP7扩展开发(二):配置项与全局数值
- java 消息推送_hanbo-push分布式消息推送、IM服务
- 密码机 密钥管理项目安装配置 从零开始
- tcp假连接_TCP 的那些事儿(上)
- hiho1095(二分)
- 德标螺纹规格对照表_德标等螺纹对照表.doc
- 个人游戏程序开发总结
- 约翰·冯·诺依曼及冯诺伊曼式计算机简介
- Windows Terminal + WSL2 + CENTOS 配置Windows命令终端
- 在网易有数上做数据加工和数据分析的实践
- Apache Avro 入门
- [附源码]JAVA+ssm基于Internet快递柜管理系统(程序+Lw)
- Android 动态分区详解(六) 动态分区的底层机制
- 笔记类app之Leanote同步机制 韩俊强的博客
- 算法:Climbing Stairs(爬楼梯) 6种解法
- 世界上第一台数字计算机图片大全,第二章 计算机中的图世界
- c++入门必学算法 质数筛