इस प्रकार मैंने समस्या हल की। मेरे मैनिफ़ेस्ट फ़ाइल
CACHE MANIFEST
# Version 0.1
CACHE:
# Minimised Styles
/css/style.0.1.min.css
# Minimised JavaScript
/js/script.0.1.min.js
FALLBACK:
//offline.html
NETWORK:
*
नोट सब कुछ है कि mydomain.com/ को जाता है जब ऑफ़लाइन अब /offline.html (कैश से)
अब, के लिए जाना जाएगा तरीका बताया गया है केवल क्या कैश करने के लिए मेनिफेस्ट फ़ाइल में, mydomain.com/ पर ऑनलाइन पृष्ठ को शामिल किए बिना।
mydomain.com/
<iframe src="/offline.html" style="display: none;"></iframe>
पर अपने पृष्ठ के तल पर निम्नलिखित आइफ्रेम रखो और offline.html में manifest="myapp.appcache"
डाल दिया।
इसका मतलब है कि mydomain.com/ लोड हो गया है, यह कभी भी कैश नहीं होगा (क्योंकि पृष्ठ पर कोई प्रकट विशेषता नहीं है)। फिर ब्राउजर को iframe के माध्यम से ऑफ़लाइन.html मिल जाता है और HTML सब कुछ की विशेषता के कारण ऑफ़लाइन.html पृष्ठ सहित मैनिफेस्ट फ़ाइल में निर्देशों का उपयोग करके कैशिंग को अन्य सभी चीज़ों को जोड़ा जाता है।
एकमात्र ओवरहेड जो मैं देख सकता हूं वह पहले पृष्ठ लोड पर है, iframe एक अतिरिक्त HTTP अनुरोध करेगा, लेकिन एक बार इसे कैश करने के बाद यह इसे कैश से ले जाएगा, इसलिए बड़ी समस्या नहीं है।
मैं अभी भी एचटीएमएल 5 के लिए थोड़ा नया हूं, लेकिन मुझे हैरान है कि मैनिफेस्ट सहित पेज के कैशिंग को रोकने के लिए कोई अच्छी तरह से परिभाषित तरीका नहीं है। –
हाँ मुझे भी। अगर मैनिफेस्ट फ़ाइल का अधिक प्रभाव पड़ा तो मैं इसे पसंद करूंगा, इसलिए केवल जो भी आप घोषित करेंगे उसे कैश किया जाएगा। इसे पृष्ठ से लिंक नहीं किया जाना चाहिए। यह बस छिपी हुई कार्यक्षमता है। – Greg
मेरा पहला विचार "इसे नेटवर्क में जोड़ें: सेक्शन" था, लेकिन कुछ परीक्षणों के बाद यह काम नहीं करता है (कम से कम आईई में - जैसे ही मैंने काम नहीं किया था, मैंने एक मामले को चौंका दिया था)। मेरी राय में सिर्फ सादा गलत है - जो स्पष्ट रूप से घोषित किया गया है वह हमेशा डिफ़ॉल्ट व्यवहार को ओवरराइड करना चाहिए। मैं इस तरह के मुद्दों की वजह से ऑफलाइन सामान का उपयोग करने के बारे में अभी भी बहुत टिकाऊ हूं। – Morvael