में आप वर्तमान में संसाधित कर रहे हैं के बारे में क्या कई लोगों jQuery में महसूस करने के लिए नहीं है यह है कि जब एक से अधिक मिलान किया चयनकर्ताओं कर रहे हैं, जो कुछ कार्यों चयनकर्ता सूची के बाद कर रहे हैं प्रत्येक व्यक्तिगत चयनकर्ता पर एक समय में अलग से कहा जाएगा।
तो $("#identifier div:first, #identifier2")
अलग से दोनों मिलान हो जाएगा:
$("#identifier div:first")
and
$("#identifier2")
और, निर्दिष्ट fadeOut
फ़ंक्शन को कॉल करें और यह प्रत्येक मैच के लिए अलग से हैंडलर है। इसका मतलब है कि प्रत्येक हैंडलर के पास मिलान करने वाले चयनकर्ता के मिलान के लिए this
मान सेट होगा।
आंतरिक jQuery के अंदर, वहाँ इस छद्म कोड की तरह एक पाश है कि सभी लौटे चयनकर्ता मैचों के माध्यम से दोहराता और हर एक के लिए श्रृंखला में अगले फ़ंक्शन को कॉल:
for (var i = 0; i < matches.length; i++) {
jQuery["fadeOut"].call(matches[i], duration, easing, fn);
}
यदि आप चाहते हैं अलग-अलग कोड होने के लिए दो अलग-अलग मैचों के लिए इस्तेमाल किया है, तो यह सिर्फ दो अलग-अलग jQuery बयान उपयोग करने के लिए बेहतर हो सकता है:
$("#identifier div:first").fadeOut(300,function() {
// do stuff for #identifier div:first
});
$("#identifier2").fadeOut(300,function() {
// do stuff for #identifier2
});
आप ब्लॉक में कोड का एक बहुत कुछ है, तो और यह ज्यादातर एक ही है, तो आप भी एक के भीतर शाखा कर सकते हैं सामान्य कोड का ब्लॉक:
$("#identifier div:first, #identifier2").fadeOut(300,function() {
if (this.id != "identifier2") {
// execute code that only applies to the #identifier match
}
// execute rest of common code
});
** यह ** वर्तमान तत्व को संदर्भित करता है। चूंकि आपका चयनकर्ता कई आइटम ढूंढने के समाप्त होता है, इसलिए यह प्रत्येक के लिए ** fadeOut ** फ़ंक्शन पर लागू होता है। आप वास्तव में क्या करने की कोशिश कर रहे हैं? – alkos333
दो तत्वों को फीका, उनके साथ अलग से काम करें, फिर उन्हें वापस फीका। मैं इसे एक अलग तरीके से प्राप्त कर सकता हूं, जो मुझे पता है। हालांकि मैं इस मनोरंजक में यह कैसे करूँगा इस बारे में उत्सुक हूं। – rlemon