Tôi đang cố gắng để có được khoảng con có một lớp = 4. Đây là một yếu tố ví dụ:
<div id="test">
<span class="one"></span>
<span class="two"></span>
<span class="three"></span>
<span class="four"></span>
</div>
Các công cụ tôi có sẵn là JS và YUI2. Tôi có thể làm một cái gì đó như thế này:
doc = document.getElementById('test');
notes = doc.getElementsByClassName('four');
//or
doc = YAHOO.util.Dom.get('#test');
notes = doc.getElementsByClassName('four');
Chúng không hoạt động trong IE. Tôi gặp một lỗi mà đối tượng (doc) không hỗ trợ phương thức hoặc thuộc tính này (getElementsByClassName). Tôi đã thử một vài ví dụ về việc triển khai trình duyệt chéo của getElementsByClassName nhưng tôi không thể làm cho chúng hoạt động và vẫn gặp lỗi đó.
Tôi nghĩ cái tôi cần là một trình duyệt chéo getElementsByClassName hoặc tôi cần sử dụng doc.getElementsByTagName ('span') và lặp lại cho đến khi tôi tìm thấy lớp 4. Mặc dù vậy tôi không chắc chắn làm thế nào để làm điều đó.
querySelectorAll
được IE 8+ getElementsByClassName
hỗ trợ trong khi chỉ được IE 9+ hỗ trợ. Nếu bạn có thể bỏ IE 7, bạn có thể sử dụng an toàn querySelectorAll('.4')
. Nhân tiện, 4
là một tên lớp không hợp lệ.
document.querySelectorAll
là DOM và không liên quan gì đến YUI