Tôi đang cố gắng tìm hiểu điều này, nhưng không có nhiều thông tin. Những trình duyệt nào hỗ trợ E4X và tại sao nó không được chấp nhận rộng rãi hơn?Hỗ trợ trình duyệt E4X
Trả lời
Theo w3schools, "Firefox hiện là trình duyệt duy nhất có hỗ trợ tương đối tốt cho E4X."
Thay vào đó, bạn có thể thử XPath. Mặc dù XPath không phải là trình duyệt chéo nhưng có một số giải pháp Javascript cho nó giống như this jQuery plugin.
EDIT
Bạn thực sự có thể sử dụng jQuery mà không cần plugin cho việc này:
$('<xml><some><code>code</code><tag>text</tag></xml></xml>').find('some > code').text()
có trình duyệt hỗ trợ E4X
Firefox và những người khác dựa trên cơ sở mã Mozilla.
tại sao nó không được áp dụng rộng rãi hơn?
Vì nó cung cấp ít chức năng thực tế chưa được bao gồm bởi các tiêu chuẩn hiện có như DOM. OK, nó đơn giản hơn để sử dụng hơn DOM, nhưng là giá mà bạn không có quyền truy cập vào tất cả các tính năng của XML, và cú pháp/mẫu XML vô nghĩa ngu ngốc, vô nghĩa là security disaster, làm cho nó trở thành các tác giả của các tài liệu được bảo vệ hoàn toàn tĩnh htaccess phải lo lắng về việc làm việc xung quanh tính năng này.
Là một phương pháp đơn giản để truy cập các kết quả của XMLHttpRequest, JSON hoàn toàn thắng. Để xử lý XML đầy đủ, bạn vẫn cần DOM. Để xử lý tài liệu dễ dàng hơn, có các bộ chọn, các thư viện XPath và JS có thể làm điều đó mà không cần phải giới thiệu cú pháp ngôn ngữ mới lạ.
Điều đó không để lại nhiều điểm thích hợp cho E4X. TBH Tôi ước nó sẽ chết. (ETA: nó hiện đã thực hiện khá nhiều như vậy.)
Firefox dropped E4X support trong phiên bản 16:
E4X bị phản đối. Nó sẽ bị tắt theo mặc định cho nội dung trong Firefox 16, được tắt theo mặc định cho chrome trong Firefox 17 và bị loại bỏ trong Firefox 18. Sử dụng DOMParser/DOMSerializer hoặc một thuật toán JXON không phải là bản địa thay thế.
- 1. Hỗ trợ trình duyệt Ember.js?
- 2. .SVG Hỗ trợ trình duyệt
- 3. Trình duyệt web nào hỗ trợ các trình duyệt web?
- 4. Trình duyệt nào hỗ trợ `overflow-y`?
- 5. Trình duyệt web nào hỗ trợ Array.forEach()
- 6. .click() phương pháp, hỗ trợ trình duyệt
- 7. Trình duyệt nào chỉ hỗ trợ SSLv2?
- 8. Trình duyệt nào hỗ trợ Xpath 2.0?
- 9. Trình duyệt nào hỗ trợ cookie HttpOnly?
- 10. Trình duyệt nào hỗ trợ HTML SHORTTAG?
- 11. Trình duyệt di động nào hỗ trợ javascript (và Ajax)?
- 12. Những trình duyệt vẫn hỗ trợ CSS biểu thức
- 13. Hỗ trợ JSON nguyên gốc của trình duyệt (window.JSON)
- 14. FB.login(): Trình duyệt không được hỗ trợ IE Mobile
- 15. Trình duyệt Wii có hỗ trợ WebSockets không?
- 16. Trình duyệt nào hỗ trợ nhúng phông chữ
- 17. Trình duyệt iPad có hỗ trợ jQuery không?
- 18. Trình duyệt của tôi không hỗ trợ "document.getElementById()"!
- 19. Trình duyệt nào hỗ trợ HTML 5/CSS3
- 20. Trình duyệt nào hỗ trợ API lịch sử HTML5?
- 21. Mọi trình duyệt có hỗ trợ tất cả unicode không?
- 22. Trình duyệt nào không hỗ trợ DELETE HTTP với jQuery.ajax?
- 23. Hỗ trợ HTML 5 trong trình duyệt Windows Phone 7
- 24. Trình duyệt nào hỗ trợ <script async = "async" />?
- 25. Trình duyệt webview có hỗ trợ tính năng html5 không?
- 26. Xác định xem trình duyệt có hỗ trợ in ấn
- 27. Hỗ trợ chéo trình duyệt của `page-break-inside: tránh;`
- 28. Facebook JS kết nối trình duyệt không được hỗ trợ
- 29. Hỗ trợ Xpath trong trình duyệt của tôi?
- 30. Phát hiện hỗ trợ trình duyệt cho HTML Media Capture
Tôi quen với e4x trong flash và đã tự hỏi tại sao nó không được hỗ trợ bên ngoài Firefox. Cảm ơn và +1. – Amarghosh
E4X là cú pháp thực sự hữu ích. Cách bạn mô tả nó bạn muốn tranh luận RegExp là khủng khiếp là tốt. Họ phục vụ mục đích của họ. Một thứ khác khiến tôi lo lắng vì tôi đang ranting, đó là lý do tại sao chỉ có một cách để làm việc đó? Tại sao tôi không thể chọn sử dụng XML thay vì buộc phải sử dụng JSON? Tôi sử dụng cả hai btw. Đây là những gì tôi không thích về cộng đồng web ngay bây giờ. Ngoài ra, @bobince liên kết bạn đăng lên không còn hợp lệ nữa. :( –
Đã cập nhật liên kết sau khi lưu trữ Google Code.Và vâng, tôi tin rằng cú pháp chữ của JS RegExp cũng là một sai lầm, mặc dù một cú pháp không có tác động tiêu cực giống như E4X đã có. Vấn đề bạn không có regex literals chủ yếu là lớp thêm dấu gạch chéo ngược- bạn cần phải đặt chúng trong một chuỗi chữ. Các ngôn ngữ khác đã giải quyết vấn đề này theo cách tổng quát và linh hoạt hơn với định dạng chuỗi ký tự 'thô'. – bobince