[code="java"]
function invoice(st,ed,len){
var spd=20;
var ul=document.getElementById('invoiceing');
var dv=ul.parentNode;
this.show=function (){
ul.innerHTML='';
ul.previousSibling.innerHTML='入票中......';
dv.style.display='block';
dv.style.height=document.body.clientHeight;
dv.style.width=document.body.clientWidth;
}
this.stop=function (){
window.clearInterval(this.running);
ul.previousSibling.innerHTML='返回';
ul.previousSibling.firstChild.onclick=this.hide;
}
this.hide=function(){
dv.style.height='0px';
dv.style.width='0px';
dv.style.display='none';
}
this.rupiao=function(){
var p=this;
return function(){
var li=document.createElement('
this.stop=function (){
window.clearInterval(this.running);
ul.previousSibling.innerHTML='<a href="javascript:;">返回</a>';
ul.previousSibling.firstChild.onclick=this.hide;
}
//关键的问题在于this.hide这个函数里有没有引用this,刚刚可能你没理解清楚我说的,
this.hide=function(){
dv.style.height='0px';
dv.style.width='0px';
dv.style.display='none';
}
之前那个版本的hide里面引用了this,
hide:function(){
this.dv.style.height='0px';
this.dv.style.width='0px';
this.dv.style.display='none';
},
其实ul.previousSibling.firstChild.onclick=this.hide;相当于
ul.previousSibling.firstChild.onclick=function(){
this.dv.style.height='0px';
this.dv.style.width='0px';
this.dv.style.display='none';
};