2012-05-19 34 views
5

Tôi đang cố gắng viết một plugin Eclipse hiển thị một số thông tin dưới dạng trang HTML. Đối với điều này tôi muốn sử dụng SWT Browser widget. Vấn đề là khi tôi đặt nội dung của trình duyệt qua các bộ chọn setText, nth-child không hoạt động, nhưng khi tôi đặt cùng một nội dung chính xác qua setUrl("file://..., chúng hoạt động chính xác. Tại sao kết xuất lại khác và làm cách nào tôi có thể đạt được cùng một kết xuất với setText như với setUrl?Hiển thị khác nhau trong Trình duyệt SWT với setText và setUrl

Tôi đang tạo Browser với SWT.NONE, vì tôi không muốn buộc người dùng cài đặt Safari hoặc Firefox.

Đây là HTML mà vấn đề là tái sản xuất:

<!doctype html><html><head> 
<style type="text/css"> 
    div:nth-child(2n) { background-color: #f00; } 
</style> 
</head><body> 
    <div>1</div> 
    <div>2</div> 
    <div>3</div> 
</body></html> 
+0

HTML bạn đưa vào thông qua setText là gì? Bạn đã thoát đúng cách? Tham chiếu hình ảnh có hoạt động không? –

+0

Đã thêm HTML. Nó không chứa tham chiếu hình ảnh. – Fixpoint

+0

Tôi không có InternetExplorer ở đây, đoạn mã này có hoạt động trong IE mà bạn đã cài đặt không? Có phải đó là HTML bạn chuyển vào setText hay là nguồn bạn nhận được khi bạn nhấp chuột phải vào Trình duyệt và chọn "nguồn hiển thị". –

Trả lời

7

Sau khi sử dụng phương pháp setText() của trình duyệt rộng rãi, tôi đã không thấy bất kỳ hành vi giống như những gì bạn mô tả.

Có thể đây là sự cố chế độ tương thích chế độ/chế độ tương thích cục bộ cục bộ không? Mặc định, IE hoạt động khác nhau dựa trên nguồn nội dung - và, theo mặc định, nó hoạt động khác khi hiển thị nội dung mạng nội bộ so với nội dung internet (và nội dung trên hệ thống tệp cục bộ của bạn được coi là nội dung mạng nội bộ). hãy nhớ chắc chắn rằng có một số tiền hợp lý của voodoo trừ khi bạn đặt rõ ràng tiêu đề tương thích.

Việc thêm thẻ meta sau có thay đổi hành vi không?

<meta http-equiv="X-UA-Compatible" content="IE=9" /> 

Ngoài ra, bạn có một phù hợp DOCTYPE định nghĩa trong HTML bạn đang thêm với setText()?

+0

Không biết về IE. Tiêu đề đã giải quyết được vấn đề; cảm ơn bạn! – Fixpoint

Các vấn đề liên quan