Mặc dù tôi dường như nhận được kết quả lạ đôi khi những dường như tôi là như vậy để ai đó có thể mô tả sự khác biệt?Whats sự khác biệt giữa nextElementSibling vs nextSibling
Trả lời
'nextSibling' trả về đối tượng nút tiếp theo trong khi 'nextElementSibling' trả về đối tượng Element tiếp theo, vì vậy có lẽ câu hỏi thực sự là sự khác biệt giữa một phần tử Node & là gì?
Về cơ bản một phần tử được chỉ định bằng thẻ HTML trong khi nút là bất kỳ đối tượng nào trong DOM, do đó phần tử là nút nhưng nút cũng có thể bao gồm các nút văn bản ở dạng khoảng trắng, nhận xét, ký tự văn bản hoặc ngắt dòng . Để biết thêm về Elements vs Nodes thấy điều này Difference between Node object and Element object?
tức Đi đoạn mã DOM sau
<div id="start"></div>
Me
<p>Hi</p>
Sử dụng nextSibling bạn sẽ nhận được:
console.log(document.getElementById('start').nextSibling); // "\nMe\n"
console.log(document.getElementById('start').nextSibling.nextSibling); // "<p>
Trong khi sử dụng nextElementSibling bạn sẽ nhận được:
console.log(document.getElementById('start').nextElementSibling);// "<p>"
Ngoài ra nextElementSibling là IE10 +, là Phương pháp mới trong khi nextSibling có trình duyệt hỗ trợ đầy đủ
nextSibling sẽ trở lại nút tiếp theo trong DOM, có lẽ hầu hết trong các tình huống trang web hiện tại, đó là một khoảng trắng nhưng nextElementSibling sẽ trở lại chỉ phần tử tiếp theo bỏ qua tất cả các nút ở giữa, nếu có.
Đối với trang hiện tại. Các nextSibling
cho câu hỏi là một TextNode(Whitespace)
nhưng nếu tôi muốn nhận được #answers
tôi sẽ sử dụng nextElementSibling
- 1. Tính di động của nextElementSibling/nextSibling
- 2. Whats sự khác biệt giữa persist() và save() trong Hibernate?
- 3. JavaScript: Whats sự khác biệt giữa 'tài liệu' và 'HTML'
- 4. Whats sự khác biệt giữa Keyboard.Focus (mục) và item.Focus()?
- 5. Whats sự khác biệt giữa Exception's. ToString() và .Message?
- 6. Whats sự khác biệt giữa UInt8 và uint8_t
- 7. Whats là sự khác biệt giữa actionbar và tabhost/tabactivity
- 8. Whats sự khác biệt giữa tensorflow dynamic_rnn và rnn?
- 9. Whats sự khác biệt giữa HttpRuntime.Cache và Session?
- 10. Whats là sự khác biệt giữa AutoResetEvent và Mutex
- 11. Whats sự khác biệt giữa Run và Do trong Rx?
- 12. Whats sự khác biệt giữa std :: condition_variable và std :: condition_variable_any?
- 13. Whats sự khác biệt giữa ContentControl.Template và ContentControl.ContentTemplate
- 14. Whats sự khác biệt giữa Parentform và Chủ sở hữu
- 15. Whats sự khác biệt giữa loại babel và jsx
- 16. Whats sự khác biệt giữa rs.close vs rs = không có gì trong một RecordSet
- 17. Sự khác biệt giữa Object.getPrototypeOf vs __proto__
- 18. Sự khác biệt giữa NSURLSessionDataTask vs NSURLSessionDownloadTask
- 19. Sự khác biệt giữa Page.User.Identity vs Request.LogonUserIdentity
- 20. Sự khác biệt giữa url vs urlRoot
- 21. Sự khác nhau giữa tải vs DOMContentLoaded
- 22. sự khác biệt giữa django.test.TestCase vs unittest vs django.utils.unittest.TestCase
- 23. Thông báo bẫy trong MFC - Whats sự khác biệt?
- 24. Sự khác biệt giữa IWindsorContainer vs IUnityContainer là gì?
- 25. Sự khác biệt giữa mặc định (int) vs int = 0
- 26. Sự khác biệt giữa Helix vs Perforce là gì?
- 27. Sự khác biệt giữa Jersey vs jax-rs
- 28. underscorejs - sự khác biệt giữa extendOwn vs extend là gì?
- 29. Sự khác biệt giữa session.evict vs rõ ràng
- 30. sự khác biệt giữa PrintWriter và OutputStream
Khoảng trắng ** là ** văn bản. –
câu trả lời hay ...... –
Còn nhiều hơn thế nữa. Các nút có loại được lưu trữ dưới dạng thuộc tính [* nodeType *] (http://www.w3.org/TR/DOM-Level-3-Core/core.html#ID-111237558). Các phần tử có * nodeType * của * 1 *, có 11 phần tử khác (xem [* MDN Node.nodeType *] (https://developer.mozilla.org/en-US/docs/Web/API/Node/nodeType)). Và DOM áp dụng cho các tài liệu khác ngoài HTML. – RobG