जावास्क्रिप्ट में DOM एलिमेंट के जटिल सेलेक्टर

चलिए कुछ और जटिल करते हैं। उदाहरण के लिए, मान लीजिए कि हमारे पास इस प्रकार का HTML कोड है:

html<div id="parent">
  <input>
</div>

चलिए उस इनपुट का लिंक प्राप्त करते हैं, जो ब्लॉक #parent के अंदर स्थित है:

javascriptlet elem = document.querySelector('#parent input');
console.log(elem);

जैसा कि आप देख रहे हैं, हमने अपना इनपुट सेलेक्टर #parent input के द्वारा प्राप्त कर लिया है। वास्तव में, इस CSS सेलेक्टर के अंतर्गत वे सभी इनपुट आते हैं, जो #parent के अंदर स्थित हैं।

मान लीजिए, उदाहरण के लिए, हमारे पास दो ऐसे इनपुट हैं:

html<div id="parent">
  <input value="1">
  <input value="2">
</div>

तब, यदि CSS कोड में सेलेक्टर #parent input लिखा जाए, तो यह हमारे दोनों इनपुट को प्रभावित करेगा:

css#parent input {
  color: red;
}

हालाँकि, querySelector विधि ऐसे काम नहीं करती है। यह हमेशा केवल एक एलिमेंट प्राप्त करती है - वह पहला एलिमेंट, जो निर्दिष्ट सेलेक्टर के अनुकूल आता है। चलिए एक उदाहरण से देखते हैं। मान लीजिए हमारे पास elem क्लास वाले इनपुट हैं:

html<input class="elem">
<input class="elem">

चलिए इन इनपुट में से पहला इनपुट प्राप्त करते हैं:

javascriptlet elem = document.querySelector('.elem');
console.log(elem); // यहाँ पहला इनपुट होगा
Задание 1

निम्नलिखित HTML दिया गया है:

html<div id="block">
  <p>1</p>
  <p>2</p>
</div>

id, block के बराबर वाले डिव से पहला पैराग्राफ का लिंक प्राप्त करें।

Задание 2

निम्नलिखित HTML दिया गया है:

html<div class="block">
  <p>1</p>
  <p>2</p>
</div>

block क्लास वाले डिव से पहला पैराग्राफ का लिंक प्राप्त करें।

Задание 3

निम्नलिखित HTML दिया गया है:

html<p class="www">text</p>
<p class="www">text</p>

www क्लास वाले पहले पैराग्राफ का लिंक प्राप्त करें।