מציאת אלמנטי DOM בעזרת מנגנון החיפוש של IE8
כיצד למצוא אלמנטים בקלות בעמוד
בהמשך לפוסטים על
IE8 נראה הפעם כיצד למצוא אלמנטים בעמוד בעזרת שאילתות ולא בעזרת JavaScript
יש לנו שני מתודות חדשות.
-
querySelector
-
querySelectorAll
כשהראשון ימצא את האלמנט הראשון ב - container שאנחנו מחפשים בו, והשני ימצא את כל האלמנטים המתאימים לתוצאות החיפוש.
דוגמא:
נניח שיש לנו את ה - html הבא
<div>
<p class="a">
<span class="b">span1</span>
<span class="a">span2</span>
<a class="a" href="">a1</a>
</p>
<p class="b">
<span class="a">span3</span>
<span class="b">span4</span>
</p>
<a class="b" href="">a2</a>
</div>
אם נריץ את השאילתא הבאה:
function ByClassA() {
var res = document.querySelectorAll(".a");
alert(res.length);
}
נקבל את התשובה 4 (מכיון שיש לנו 4 אלמנטים שיש להם את ה - class בשם a)
אם נרית את השאילתה הבאה:
function Spans() {
var res = document.querySelectorAll("span");
alert(res.length);
}
נקבל את התשובה 4 (מכיון שיש לנו 4 אלמנטים מסוג span)
אם נריץ את השאילתא הבאה
function a() {
var res = document.querySelectorAll("p a");
alert(res.length);
}
נקבל את התשובה 1 (מכיוון שיש לנו a אחד שיושב במתוך אלמנט p)
כמובן שאם נחפש בתוך continaer אחר ולא בתוך ה - document נקבל את התשובות המתאימות