Tiêu đề khá rõ ràng: Có sự khác biệt lớn nào giữa innerHTML
và createTextNode
(được sử dụng với Append
) để lấp đầy khoảng thời gian bằng văn bản không?Có sự khác biệt lớn nào giữa innerHTML và sử dụng createTextNode để lấp đầy khoảng không?
Trả lời
Tất nhiên. createTextNode
sẽ thoát khỏi bất kỳ chuỗi nào và hiển thị chúng như chúng đang có, trong khi innerHTML
có thể hiển thị các chuỗi giống như html thành một DOM. Nếu bạn không muốn điều đó (trừ khi bạn chắc chắn văn bản không chứa thẻ không thoát, ví dụ: khi chỉ định trực tiếp chữ), bạn có thể sử dụng textContent
(hoặc innerText
cho IE).
Tuy nhiên, tôi khuyên bạn nên createTextNode
, bởi vì tất cả các trình duyệt đều hỗ trợ như nhau mà không có bất kỳ quirks nào.
"* ... để điền vào một khoảng với văn bản *" –
Có. Nhưng * văn bản * có thể chứa các thẻ vv (bạn không bao giờ biết), vì vậy tôi mong đợi OP sử dụng 'innerText' /' textContent' ít nhất – Bergi
@ Bergi — bạn nên cập nhật câu trả lời của bạn để bao gồm textContent/innerText như một sự thay thế (có lẽ thậm chí còn được ưa thích). – RobG
Sự hiểu biết của tôi là một số thao tác của innerHTML loại bỏ tất cả các sự kiện ràng buộc, vì vậy việc sử dụng createTextNode là thích hợp hơn.
- 1. gnuplot - lấp đầy khoảng trống giữa hai chức năng
- 2. Sự khác biệt giữa jsRender và jsViews
- 3. Indexeddb: Sự khác biệt giữa việc sử dụng và không đầy đủ?
- 4. Có sự khác biệt nào giữa gluLookAt() và glFrustum() không?
- 5. Có sự khác biệt nào giữa System.Windows.Clipboard và System.Windows.Forms.Clipboard không?
- 6. Có sự khác biệt nào giữa MsgBox và MessageBox.Show không?
- 7. Có sự khác biệt nào giữa log4net.Config.BasicConfigurator.Configure() và log4net.Config.XmlConfigurator.Configure() không?
- 8. Sự khác biệt giữa việc sử dụng Trace và TraceSource
- 9. Làm cách nào để div trung gian lấp đầy khoảng trống giữa các phần tử nổi?
- 10. Có sự khác biệt nào giữa RPC và IPC không?
- 11. Có sự khác biệt nào giữa CGRect và NSRect không?
- 12. Có sự khác biệt nào giữa! == và! = Trong PHP không?
- 13. Có sự khác biệt nào giữa `ListView.invalidateViews()` và 'Adapter.notifyDataSetChanged()' không?
- 14. có sự khác biệt giữa/mnt/sdcard và/sdcard không?
- 15. Sự khác biệt giữa readAsBinaryString và readAsText sử dụng FileReader
- 16. Sự khác biệt giữa $ * và $ @
- 17. Sự khác biệt giữa "**/* /" và "** /"?
- 18. Sự khác biệt giữa XmlSerializer và BinaryFormatter
- 19. Sự khác biệt giữa việc sử dụng @OneToMany và @ManyToMany
- 20. Sự khác biệt giữa khoảng trống nội tuyến tĩnh và khoảng trống là gì?
- 21. Sự khác biệt giữa ". +" Và ". +?"
- 22. Sự khác biệt giữa = và: =
- 23. Sự khác biệt giữa coredata và sqlite
- 24. Hãy để khoảng trống lấp đầy chiều rộng còn lại?
- 25. Sử dụng: sau khi chọn bộ chọn CSS để lấp đầy khoảng trống?
- 26. Có sự khác biệt nào giữa UITableViewCellAccessoryDetailDisclosureButton và UITableViewCellAccessoryDisclosureIndicator
- 27. sự khác biệt giữa document.getElementById là gì ("test") giá trị. Và document.getElementById ("test") innerHTML
- 28. Có sự khác biệt nào giữa cpython và python
- 29. Sự khác biệt giữa nproc và ulimit?
- 30. Sự khác biệt giữa $ (...) và `...`
Không có sự khác biệt. –
Cái gì? createTextNode() là một số magnitudes nhanh hơn innerHTML khi thêm văn bản vào một nút. Xem http://jsperf.com/innerhtml-and-createtextnode – devnull69
@ devnull69 Bài kiểm tra đó dành riêng cho việc thêm nội dung mới nhiều lần (và tính toán bổ sung HTML sẽ tự nhiên chậm hơn). Nhưng chỉ cần thêm văn bản là rất bình đẳng (innerHTML thực sự là một chút nhanh hơn): http://jsperf.com/innerhtml-and-createtextnode/2 – David