अद्यतन [ सूर्य ०D / २६ / २०११ ] यह उत्तर इतना लोकप्रिय हो गया है कि मैंने इसे एक पूर्ण ब्लॉग / ट्यूटोरियल में बनाने का निर्णय लिया है।
कृपया मेरे ब्लॉग पर जाएँ यहाँ नवीनतम जानकारी तक पहुँचने के लिए jQueryUI में
टैब के साथ काम करने की नवीनतम जानकारी
भी देखें। (ब्लॉग में भी) एक jsFiddle है
अपडेट करें! कृपया ध्यान दें: jQueryUI (1.9+) के नए संस्करणों के ui-tabs-selected
साथ बदल दिया गया है ui-tabs-active
। !!!
मुझे पता है कि यह धागा पुराना है, लेकिन मैंने जो कुछ नहीं देखा था , वह यह था कि "टैब इवेंट" के अलावा कहीं और से "चयनित टैब" (वर्तमान में नीचे गिरा पैनल) कैसे प्राप्त किया जाए। मेरे पास एक आसान तरीका है ...
var curTab = $('.ui-tabs-panel:not(.ui-tabs-hide)');
और आसानी से सूचकांक प्राप्त करने के लिए, निश्चित रूप से साइट पर सूचीबद्ध तरीका है ...
var $tabs = $('#example').tabs();
var selected = $tabs.tabs('option', 'selected'); // => 0
हालाँकि, आप इंडेक्स प्राप्त करने के लिए मेरी पहली विधि का उपयोग कर सकते हैं और उस पैनल के बारे में जो कुछ भी आप चाहते हैं वह बहुत आसान है ...
var curTab = $('.ui-tabs-panel:not(.ui-tabs-hide)'),
curTabIndex = curTab.index(),
curTabID = curTab.prop("id"),
curTabCls = curTab.attr("class");
// etc ....
पुनश्च। यदि आप एक iframe वैरिएबल का उपयोग करते हैं तो .find ('। Ui-tabs-panel: not (.ui-tabs-hide)') का उपयोग करते हैं, तो आपको फ़्रेम में चयनित टैब के लिए भी ऐसा करना आसान होगा। याद रखें, jQuery पहले से ही सभी कड़ी मेहनत करता है, पहिया को सुदृढ़ करने की कोई आवश्यकता नहीं है!
बस विस्तार (अद्यतन)
प्रश्न मेरे सामने लाया गया था, "क्या होगा यदि दृश्य पर एक से अधिक टैब क्षेत्र हैं?" फिर से, बस सरल सोचें, मेरे समान सेटअप का उपयोग करें लेकिन पहचानने के लिए एक आईडी का उपयोग करें कि आप किस टैब को पकड़ना चाहते हैं।
उदाहरण के लिए, यदि आपके पास:
$('#example-1').tabs();
$('#example-2').tabs();
और आप दूसरे टैब सेट का वर्तमान पैनल चाहते हैं:
var curTabPanel = $('#example-2 .ui-tabs-panel:not(.ui-tabs-hide)');
और यदि आप वास्तविक टैब चाहते हैं और पैनल नहीं (वास्तव में आसान है, यही वजह है कि मैंने पहले इसका उल्लेख नहीं किया है, लेकिन मुझे लगता है कि मैं अब, बस पूरी तरह से होना चाहता हूं)
// for page with only one set of tabs
var curTab = $('.ui-tabs-selected'); // '.ui-tabs-active' in jQuery 1.9+
// for page with multiple sets of tabs
var curTab2 = $('#example-2 .ui-tabs-selected'); // '.ui-tabs-active' in jQuery 1.9+
फिर से, याद रखें, jQuery ने सारी मेहनत की, इतना कठिन मत सोचो।