我试图瓦解要求一个div,但我的setTimeout函数的意志不能成功调用它的回调函数。这是下面的代码:为什么setTimeout回调会给我一个错误?
function newsFeed() {
this.delete = function(listingID) {
var listing = document.getElementById(listingID);
var currHeight = listing.offsetHeight;
var confirmDelete = confirm("Are you sure you'd like to delete this listing forever?");
if (confirmDelete) {
this.collapse(listingID,currHeight,currHeight,100);
}
}
this.collapse = function(listingID,orig_height,curr_height,opacity) {
var listing = document.getElementById(listingID);
var reduceBy = 10;
if(curr_height > reduceBy) {
curr_height = curr_height-reduceBy;
listing.style.overflow = "hidden";
listing.style.height = (curr_height-40) + "px";
if(opacity > 0) {
opacity = opacity - 10;
var opaque = (opacity/100);
listing.style.opacity=opaque;
listing.style.MozOpacity=opaque;
listing.style.filter='alpha(opacity='+opacity+')';
}
setTimeout("this.collapse('"+listingID+"',"+orig_height+","+curr_height+","+opacity+")",1);
}
}
}
var newsFeed = new newsFeed();
,我把它叫做文件如下:
<div id="closeMe">
<a onclick="newsFeed.delete('closeMe');">close this div</a>
</div>
当它到达内this.collapse的setTimeout函数...它的错误“this.collapse不是一个功能“。
做我把这个新闻源中()或this.collapse函数内?又名...应该是'这'实际上指的是什么? – johnnietheblack 2009-09-02 21:21:52
...对不起,因为现在即时得到self.collapse不是一个函数 – johnnietheblack 2009-09-02 21:22:47
得到它,你统治 – johnnietheblack 2009-09-02 21:34:07