2010-02-16 4 views
7

Tôi đang viết mã javascript để duyệt và thao tác các tài liệu XML lồng nhau sâu sắc. Với các trình duyệt hiện đại, là vẫn còn một nhu cầu cho các thư viện crossbrowser như:Tình huống với XSLT và XPATH trong các trình duyệt hiện đại là gì?

Theo như tôi biết, mà không sử dụng một trong những sẽ không có bất kỳ XPath trong IE đã tắt ActiveX. Và một trình bao bọc đơn giản là cần thiết cho cả XSLT và XPath để phân biệt giữa IE và w3c XML Dom.

+0

Bạn có bao gồm IE6 trong 'trình duyệt hiện đại' không? – SLaks

+0

Không, Firefox 3.5, Safari 4, Opera 10, Google Chrome. Ngoài ra, hãy xem danh sách trong goog-ajaxslt.sourceforge.net/README cho một số trình duyệt từ năm 2008. –

+0

bạn có phải thực hiện thao tác XML cục bộ không? chúng tôi có xu hướng tránh và thực hiện bất kỳ máy chủ công cụ XSLT/XPath nào (sử dụng phần cứng datapower) có lợi ích hiệu suất cũng như loại bỏ sự lo lắng về trình duyệt cục bộ. Vâng, ít nhất là giảm nó thành một sự lo lắng về HTML/Javascript. – MadMurf

Trả lời

3

Miễn là bạn tuân thủ chức năng XSLT 1.0, tôi sẽ nói rằng hỗ trợ XSL và XPATH hoạt động khá tốt trên tất cả các trình duyệt, ngay cả khi ở xa IE6.

Điều đó đang được nói, có đủ phiền toái trong xử lý XSLT phía máy khách (bao gồm cho đến gần đây một lỗi JQuery nguy hiểm trong firefox cho các tệp được tạo bằng XSLT phía máy khách).

Tôi đã làm việc chăm chỉ về chủ đề này trong hầu hết năm 2009 và tôi không thể thấy bất kỳ lý do chính đáng nào để thực hiện xử lý trên máy khách, khi thực hiện dễ dàng trên máy chủ. Nếu bạn để cung cấp XML, cho phép khách hàng yêu cầu cụ thể nó bằng biến chuỗi truy vấn hoặc tiêu đề Accept:.

1

Tình huống xấu và không cải thiện rất nhanh. Thêm Chrome vào danh sách của bạn. Xử lý phía máy chủ XML nếu bạn có thể, SimpleXML trong PHP5 và điều khiển Xml trong ASP.NET là những nơi tuyệt vời để bắt đầu.