Tôi có một tập hợp các tệp HTML sử dụng JavaScript để tạo công cụ điều hướng, lập chỉ mục, TOC, v.v. Những tệp này chỉ có nghĩa là được mở cục bộ (ví dụ: tệp: //) và không được phân phát trên máy chủ web. Kể từ Firefox 3.x, chúng tôi gặp phải lỗi sau khi nhấp vào nút điều hướng sẽ tạo khung mới cho TOC:Làm thế nào để vượt qua giới hạn document.domain khi mở tệp cục bộ?
Error: Permission denied for <file://> to get property Location.href from <file://>.
Tôi hiểu rằng điều này là do các biện pháp bảo mật trong FF 3.x không phải trong 2.x, trong đó document.domain không khớp, do đó, nó giả định đây là cross-site scripting và đang từ chối truy cập.
Có cách nào để giải quyết vấn đề này không? Có lẽ chỉ là một công tắc để tắt/mở trong Firefox? Một chút mã JavaScript để có được nó?
Đó có vẻ là những gì bạn muốn làm cho các tệp được phân phát trên máy chủ, nhưng nội dung nào tôi đang truy cập qua tệp: // không có miền? – Gudlyf
Giải pháp này dành cho các trường hợp bạn có một trang web (được lưu trữ ở đâu đó) và nó cần đọc một số tệp trong ổ đĩa cứng của khách hàng. Một giải pháp khác là tắt chính sách này (Tôi đã chỉnh sửa câu trả lời của mình bằng cách thực hiện điều đó) - Tôi hiểu rõ điều này :) – Cleiton
Điều này không có tác dụng đối với tôi trong Firefox 11. Tôi đã sử dụng user.js trong thư mục hồ sơ chính xác và Tôi đã thử trực tiếp nhập nó từ about: config. URL là "http: // localhost". – Michael