87,910
社区成员
发帖
与我相关
我的任务
分享
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> Test Property </title>
<meta name="generator" content="editplus" />
</head>
<body>
<script type="text/javascript">
<!--
var isIE = (document.all) ? true : false;
var isIE6 = isIE && ([/MSIE (\d)\.0/i.exec(navigator.userAgent)][0][1] == 6);
var $ = function(sId){
return "string" == typeof(sId) ? document.getElementById(sId) : sId;
}
var Bind = function(object, fun){
return function() {
return fun.apply(object, arguments);
}
}
function addEventHandler(oTarget, sEventType, fnHandler){
if(oTarget.addEventListener){
oTarget.addEventListener(sEventType, fnHandler, false);
}else if(oTarget.attachEvent){
oTarget.attachEvent("on" + sEventType, fnHandler);
}else{
oTarget["on" + sEventType] = fnHandler;
}
}
var isSafa = (window.openDatabase) ? true : false;
var TestProper = function(){
};
TestProper.prototype = {
// 创建广告
CreateBanner: function(){
document.write("<div id='crazy_bannerleft' style='width:90px;border:2px solid red;height:240px;z-index:12299;onMouseDown='return false;'></div>");
document.write("<div id='crazy_bannerright' style='width:90px;height:240px;border:2px solid red;z-index:12299;onMouseDown='return false;'></div>");
this.LeftBanner = $("crazy_bannerleft");
this.RightBanner = $("crazy_bannerright");
},
// 设置条幅的滚动程序
SetBannerFixed: function(){
$("crazy_bannerright").style.top = (d.scrollTop+d.clientHeight-$("crazy_bannerright").offsetHeight)+"px";
$("crazy_bannerright").style.left = (d.scrollLeft+d.clientWidth-$("crazy_bannerright").offsetWidth)+"px";
$("crazy_bannerleft").style.top = (d.scrollTop+d.clientHeight-$("crazy_bannerleft").offsetHeight)+"px";
$("crazy_bannerleft").style.left = (d.scrollLeft)+"px";
},
Init: function(){
// Safari不进行操作
if(!!isSafa) return;
var $d = document.compatMode == "BackCompat" ? d = document.body : d = document.documentElement;
this.CreateBanner();
this.LeftBanner.style.position = !isIE6 ? "fixed" : "absolute";
this.RightBanner.style.position = !isIE6 ? "fixed" : "absolute";
if(isIE6) {
addEventHandler(window, "scroll", this.SetBannerFixed);
}
addEventHandler(window, "load", this.SetBannerFixed);
addEventHandler(window, "resize", this.SetBannerFixed);
}
}
var Test = new TestProper();
Test.Init();
//-->
</script>
<br/><br/><br/><br/><br/><br/><br/><br/>
<br/><br/><br/><br/><br/><br/><br/><br/>
<br/><br/><br/><br/><br/><br/><br/><br/>
<br/><br/><br/><br/><br/><br/><br/><br/>
<br/><br/><br/><br/><br/><br/><br/><br/>
<br/><br/><br/><br/><br/><br/><br/><br/>
<br/><br/><br/><br/><br/><br/><br/><br/>
<br/><br/><br/><br/><br/><br/><br/><br/>
<br/><br/><br/><br/><br/><br/><br/><br/>
<br/><br/><br/><br/><br/><br/><br/><br/>
<br/><br/><br/><br/><br/><br/><br/><br/>
<br/><br/><br/><br/><br/><br/><br/><br/>
</body>
</html>
if(isIE6) {
this.isMaxFixed && addEventHandler(window, "scroll", (function(obj){
return function(){
oThis._fixed(obj);
}
})(this.Container));
}
this.isMaxFixed && addEventHandler(window, "scroll", this._fixed("dddd"));
//this._fixed("dddd")这样是不可以的 因为addEventHandler只能传句柄this._fixed
是不是应该怎样 弄个闭包解决?
var Bind = function(object, fun) {
var args = Array.prototype.slice.call(arguments).slice(2);
return function() {
return fun.apply(object, args.concat(Array.prototype.slice.call(arguments)));
}
}
SetFixed: function(obj){
alert(obj)
}
this._fixed = Bind(this, function(){this.isCenter ? this.SetCenter() : this.SetFixed();})
this._fixed(Object);
var Bind = function(object, fun) {
var args = Array.prototype.slice.call(arguments).slice(2);
return function() {
return fun.apply(object, args.concat(Array.prototype.slice.call(arguments)));
}
}
this._bannerfixed = Bind(this, function(){this.SetBannerFixed();})
// 如果 我想调用this._bannerfixed(obj)并且 想传个object对象 给SetBannerFixed()应该怎么去写