passing anonymous function as parameter in javascript -


मेरे पास निम्न जावास्क्रिप्ट कोड है:

  EventsManager.prototype.hideContainer = function () {Var कि = यह; Var index = that.getNextUnreadEventIndex (); यदि (इंडेक्स! == -1) {EventsManager.animateHideLeft (function () // & lt; --- फ़ंक्शन को किसी अन्य फ़ंक्शन के पैरामीटर के रूप में देना {var unreadEvent = that.eventsList.splice (सूचकांक, 1) [0]; UnreadEvent.isEventOnFocus = सच; that.eventsList.push (unreadEvent); that.displayLastEvent ();}); }}   

यहां ईवेंटमॅनेजर.एनेटहैड-लिफ़्ट () फ़ंक्शन का कोड है:

  EventsManager.animateHideLeft = function (callback) {var p = document.getElementById () "eventsContainer"); Var width = parseFloat (p.style.width); अगर (चौड़ाई = चौड़ाई === "नाएन") चौड़ाई = 200; यदि (चौड़ाई & lt; = 10) {स्पष्टटाइमआउट (एफआर); अलर्ट (कॉलबैक का प्रकार); // & lt; - यह "अपरिभाषित" कॉलबैक () दिखाता है; } और {चौड़ाई = चौड़ाई - 10; P.style.width = चौड़ाई + "पीएक्स"; Fr = setTimeout (फ़ंक्शन () {EventsManager.animateHideLeft ();}, 50); }};   

दुर्भाग्य से फ़ंक्शन animateHideLeft अपेक्षा के अनुरूप काम नहीं करता है जब मैं कॉलबैक का टेस्ट टाइप करता हूं तो यह "अपरिभाषित" चेतावनी देता है

मैं इस प्रकार की गड़बड़ी को ठीक कैसे कर सकता हूं ताकि मुझे अपेक्षित परिणाम मिल जाए?

ऐसा लगता है कि आपको बस कॉलबैक को setTimeout में कॉल के माध्यम से पास करना होगा।

  fr = setTimeout (function () {EventsManager.animateHideLeft (कॉलबैक);}, 50);    

Comments

Popular posts from this blog

excel vba - How to delete Solver(SOLVER.XLAM) code -

java - Reaching JTextField in a DocumentListener -

c# - Add Image in a stackpanel based on textbox input -