javascript - jQuery extension: why does it not work on all matching elements? -
मेरे पास एक एक्सटेंशन है जैसे:
$ .fn.crazything = function () {Var स्व = $ (यह); // कुछ पागल सामान वापस स्वयं करते हैं; }
और जब मैं इसे कॉल करता हूं:
$ ("div.crazydiv")। पागल होना ();
यह काम करता है, लेकिन केवल पहली मिलान डिवा पर। यदि मेरे पास पेज पर एक से अधिक डिवा हैं, तो मुझे करने की आवश्यकता है:
$ ("div.crazydiv")। प्रत्येक (फ़ंक्शन (i) {$ (this)। Crazything () ;});
यह क्यों है, और मैं कई डिवाओं पर काम करने के लिए अपने विस्तार को कैसे पुनः लिख सकता / सकती हूं?
अधिकांश jQuery प्लग इन इस पैटर्न का उपयोग करते हैं जो आपकी पागल सामग्री को संभालता है:
(फ़ंक्शन ($) {$ .fn.crazything = function () {// पर सेटअप की अनुमति दें JQuery के ऑब्जेक्ट्स जो कि कई तत्वों को कनटिन करते हैं: इस फ़ंक्शन को वापस करें (फ़ंक्शन () {// इस फ़ंक्शन को एक बार jQuery ऑब्जेक्ट में प्रत्येक एलीमेंट के लिए कहा जाता है varian Self = $ (this); // कुछ पागल सामान करते हैं});};} ) (jQuery);
Comments
Post a Comment