2010-07-18 10 views
7

$("p") वर्तमान वेब पेज पर सभी अनुच्छेदों का संदर्भ देता है। क्या चयनकर्ता से मेल खाने वाले प्रत्येक तत्व के लिए कोड निष्पादित करना संभव है?jQuery: प्रत्येक तत्व के लिए कोड निष्पादित करना जो एक चयनकर्ता से मेल खाता है

// Show the background color of every paragraph on the page 
foreach (object = $("p")) { 
    alert(object.css("background-color")); 
} 

उत्तर

9
$('p').css('background-color', 'black') 

आप और अधिक लचीलापन की जरूरत है:

$('p').each(function() { 
    $(this).css('background-color', 'red'); 
}); 
+0

धन्यवाद, यह काम करता है! – Pieter

5

आप इस तरह का मिलान नहीं हुआ तत्वों के माध्यम से पुनरावृत्ति, के लिए .each() उपयोग कर सकते हैं:

यहाँ छद्म कोड में एक साधारण उदाहरण है

$("p").each(function() { 
    alert($(this).css("background-color")); 
}); 

यदि आप चाहते हैं स्थापित करने के लिए या कुछ करें (उदाहरण के लिए ऊपर की तरह प्रत्येक से मूल्य नहीं प्राप्त करना), .each() की कोई आवश्यकता नहीं है, बस इसे निष्पादित करें और यह प्रत्येक तत्व के लिए चलाएगा सेट ... यह डिफ़ॉल्ट jQuery व्यवहार है, उदाहरण के लिए:

$("p").show(); //shows all <p> elements 
0

each विधि आप क्या चाहते हैं

$('p').each(function() { 
    alert($(this).css('backgroundColor')); 
} 
की तरह लगता है
+2

यहां एक तरफ के रूप में, 'पृष्ठभूमि रंग' संपत्ति के रूप में उपयोग करने के लिए है, जैसे '{backgroundColor: 'red', रंग: 'हरा'} ', लेकिन एक स्ट्रिंग का उपयोग करते समय मानक सिंटैक्स के अलावा कुछ भी उपयोग करने की आवश्यकता नहीं है (जब आप डीबगिंग भी करते हैं तो ढूंढना आसान होता है)। 'पृष्ठभूमि रंग' वापस आने पर कवर के तहत 'पृष्ठभूमि-रंग' में बदल जाता है, इसे अतिरिक्त काम करने के लिए यहां परिवर्तित करने की आवश्यकता नहीं है :) –

+0

आह, अच्छा, उस निक के लिए धन्यवाद। मैं आदत के बल से इस तरह इसका उपयोग करता हूं। उस आदत को तोड़ने का समय होना चाहिए :-) –

संबंधित मुद्दे

 संबंधित मुद्दे