2012-02-14 6 views
6

Trong dự án hiện tại của chúng tôi, chúng tôi đang sử dụng HTML 5 localStorage với dự phòng lưu trữ toàn cầu cho Firefox và hành vi userdata cho IE6/IE7. Sự sụt giảm được cung cấp thông qua tập lệnh JS có tên là jStorage. Điều này làm việc tốt, cho đến khi chúng tôi bắt đầu thử nghiệm trong IE6/IE7, mặc dù nó "hoạt động", nó chỉ ra rằng có một hạn chế trong hành vi userdata khóa nó xuống để lưu trữ chỉ có thể được đặt và đọc trên cùng một URL hoặc như MSDN đặt nó "Vì lý do an ninh, một cửa hàng UserData chỉ có sẵn trong cùng một thư mục và với cùng một giao thức được sử dụng để persist the store".Miền địa phương rộng lưu trữ trở lại cho I6 & IE7?

Do đó nếu tôi đặt giá trị trên một trang và sau đó điều hướng đến một trang khác, mặc dù tôi đang ở trên cùng một trang web, nó sẽ không hoạt động. Mà đối với chúng tôi khá nhiều ám nó không thể sử dụng như là một mùa thu trở lại cho lưu trữ địa phương, đó là phạm vi cho mỗi tên miền.

Có ai gặp vấn đề này trước đây và tìm thấy giải pháp tốt không?
Bất kỳ ý tưởng hay suy nghĩ nào sẽ được đánh giá cao.

+0

Bạn có thực sự cần hỗ trợ IE6 và 7 không? –

+0

Câu hỏi hay, chúng tôi đang xem nhật ký tại momnet để tìm hiểu cách thức, phần lớn người dùng vẫn đang sử dụng IE6/IE7. Thật không may, có vẻ như có, chúng tôi cần nó. –

Trả lời

0

nếu sự cố là nhận dữ liệu trên hai trang trong các đường dẫn khác nhau, nhưng trong cùng một tên miền, bạn có thể thử một trong số này (lưu ý: tôi không thử: Tôi chỉ đang cố gắng sáng tạo)

  1. Sử dụng url viết lại (với một .htaccess), do đó bạn có thể truy cập /path1/page1/path2/page2 với một đơn path-rewritten/page1path-rewritten/page2

  2. nếu bạn đang ở trong /path2/page2 bạn có thể tải một iframe vô hình tải một trang trong /path1 trong đó bạn lấy dữ liệu được lưu trữ trong một số cấu trúc dữ liệu mà bạn chuyển vào tài liệu gốc.
    Vì page1 và page2 là - theo giả thuyết - trong cùng một tên miền, bạn có thể làm cho page1 và iframe giao tiếp với nhau thông qua javascript.

btw câu hỏi hay.

0

Một giải pháp lý thuyết sẽ là:

  1. động tạo ra một ẩn "proxy" iframe truy cập vào một tài liệu tĩnh lấy ra từ một vị trí thuận tiện của bạn, nói http: /domain/proxy.html
  2. quyền truy cập proxy vào phần tử DOM trong khung nội tuyến để lưu giữ/tìm nạp dữ liệu
1

Dấu vết của Remy Sharp sẽ làm điều đó.

https://gist.github.com/remy/350433

+0

Trong khi liên kết này có thể trả lời câu hỏi, bạn nên tránh các câu trả lời chỉ liên kết vì các liên kết có xu hướng phân rã theo thời gian. – pinckerman