ฉันกำลังพยายามหาช่วงเด็กที่มี class = 4 นี่คือองค์ประกอบตัวอย่าง:
<div id="test">
<span class="one"></span>
<span class="two"></span>
<span class="three"></span>
<span class="four"></span>
</div>
เครื่องมือที่ฉันมีคือ JS และ YUI2 ฉันสามารถทำสิ่งนี้ได้:
doc = document.getElementById('test');
notes = doc.getElementsByClassName('four');
//or
doc = YAHOO.util.Dom.get('#test');
notes = doc.getElementsByClassName('four');
สิ่งเหล่านี้ใช้ไม่ได้ใน IE ฉันได้รับข้อผิดพลาดว่าวัตถุ (doc) ไม่รองรับเมธอดหรือคุณสมบัตินี้ (getElementsByClassName) ฉันได้ลองใช้ตัวอย่างบางส่วนของการใช้งาน getElementsByClassName แบบข้ามเบราว์เซอร์แล้ว แต่ไม่สามารถใช้งานได้และยังคงได้รับข้อผิดพลาดนั้น
ฉันคิดว่าสิ่งที่ฉันต้องการคือ getElementsByClassName ข้ามเบราว์เซอร์หรือฉันต้องใช้ doc.getElementsByTagName ('span') และวนซ้ำจนกว่าฉันจะพบคลาส 4 ฉันไม่แน่ใจว่าจะทำอย่างไร
querySelectorAll
ได้รับการสนับสนุนโดย IE 8+ ในขณะที่getElementsByClassName
IE 9+ รองรับเท่านั้น หากคุณสามารถวาง IE 7 ได้แสดงว่าคุณใช้งานquerySelectorAll('.4')
ได้อย่างปลอดภัย อย่างไรก็ตาม4
เป็นชื่อคลาสที่ไม่ถูกต้อง
document.querySelectorAll
เป็น DOM และไม่มีส่วนเกี่ยวข้องกับ YUI