요청시 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 함수가 아닙니다. "
내가 이것을 newsFeed() 또는 this.collapse 함수 내에 넣을 수 있습니까? 일명 ...이 '실제로'언급해야 할 것은 무엇입니까? – johnnietheblack
... 죄송합니다. 현재 self.collapse가 함수가 아닙니다. – johnnietheblack
이 있습니다. RULE – johnnietheblack