फोर्स-रीफ्रेशिंग केवल फ़ायरफ़ॉक्स और क्रोम में जावास्क्रिप्ट फ़ाइलों को


64

मैं अपने वेब ब्राउज़र (फ़ायरफ़ॉक्स और क्रोम) से केवल जावास्क्रिप्ट फ़ाइलों को साफ़ करना चाहता हूं। मैं जावास्क्रिप्ट डीबगिंग कर रहा हूं, और यह कष्टप्रद है कि जब भी मैं अपनी जेएस फाइलें बदलूंगा तो मेरा जेएस अपडेट नहीं होगा। अब मैं केवल एक ही चीज़ अपने कूकीज़ को साफ़ कर सकता हूँ, लेकिन ऐसा करना मेरे सभी ब्राउज़िंग इतिहास को मिटा देता है।

मैं जावास्क्रिप्ट फ़ाइलों को कैसे साफ़ / ताज़ा कर सकता हूँ जो अन्य फ़ाइलों को साफ़ किए बिना मेरे ब्राउज़र में लोड की गई हैं?

जवाबों:


42

मैं खुद विकास के लिए ऐसा करता हूं। मैं Ctrl+ का उपयोग करता हूं F5। यह एक ताज़गी की तरह है। यह पृष्ठ को रिफ्रेश करने सहित किसी भी संदर्भित जावास्क्रिप्ट फाइल या सीएसएस फाइलों को फिर से डाउनलोड करता है भले ही वे कैश की गई हों।

यह आपके ब्राउज़िंग इतिहास जैसे कुछ और स्पष्ट नहीं करेगा।

लेकिन कृपया ध्यान दें कि यद्यपि मुझे पता है कि यह फ़ायरफ़ॉक्स और शायद इंटरनेट एक्सप्लोरर में काम करता है, मुझे यकीन नहीं है कि Ctrl+ F5क्रोम में भी इसी तरह काम करता है।

इसके अलावा, iegik कहते हैं:

कुछ ब्राउज़रों पर आप एक ही कार्य करने के लिए ` Ctrl+ Shift+ Rका उपयोग कर सकते हैं ।


महान! मैं आपके लिए स्वीकृत उत्तर को बदल देता हूं क्योंकि आपका एक सरल समाधान है
Graviton

मैं इसकी सराहना करता हूं ... लेकिन कृपया ध्यान दें कि हालांकि मुझे पता है कि यह फ़ायरफ़ॉक्स में काम करता है, और शायद IE, मुझे यकीन नहीं है कि अगर CTRL-F5 क्रोम में उसी तरह काम करता है।
7wp

2
Win7 पर Chrome 21 बीटा के साथ समान है - पृष्ठ को ctrl-f5 के साथ रीफ़्रेश करने से JS फ़ाइल पुनः नहीं आती है (मैं डबल सत्यापन के लिए चार्ल्स का उपयोग कर रहा हूं)।
आर्टेम रसाकोवस्की

1
वास्तव में क्रोम पहले ctrl + f5 को सामान्य रीफ्रेश डिज़ाइन के रूप में मानता है, बाद में ctrl + f5 (अधिक तब एक) को थोड़े समय में सभी स्रोतों को पुनः लोड करने के लिए मजबूर करेगा
Zeela

1
Chrome के लिए, F12 और पुनः लोड बटन को राइट-क्लिक करें। superuser.com/questions/220179/…
Cees टिम्मरमैन

50

क्रोम के साथ:

Chrome 15 से शुरू करके, डेवलपर टूल खोलें, स्क्रीन के नीचे बाईं ओर स्थित cogwheel पर क्लिक करें, और चेकबॉक्स का चयन करें कैश हटाएं

Chrome 15 और उसके बाद कैश अक्षम करें

इस तरह, आपको यह सुनिश्चित हो जाएगा कि संसाधन हमेशा सर्वर से पुनः लोड किए जाते हैं, और आपको कैश को मैन्युअल रूप से साफ़ नहीं करना होगा, जो असंबंधित साइटों के लिए कैश्ड डेटा को भी हटा सकता है।


टिप के लिए धन्यवाद - मैंने अभी जांच की है और यह विकल्प क्रोम 14 में भी है।
18

प्रतिभाशाली! यह एक बेहतरीन खोज है।
Randomblue

शानदार, मैं इस के लिए देख रहा था।
आर्टेम रसाकोवस्की

... और बस इसके बाद आपके द्वारा किए जाने वाले विकल्प को अनचेक करना न भूलें।
हलाल Halzgür

दूसरी बार, ऐसा लगता है कि ये विकल्प केवल तभी सक्रिय होते हैं जब देवतुल्य दिखाई देते हैं: twitter.com/ChromiumDev/status/227356682890670080 ( stackoverflow.com/a/7000899-372654 से )
Halil Özgür

8

मैं @ 7wp से असहमत हूं। चूंकि आपके कुछ अंतिम उपयोगकर्ता Ctrl+ F5फ़ंक्शन से परिचित नहीं हैं , और कुछ को ब्राउज़रों और यहां तक ​​कि अन्य ब्राउज़रों की मौजूदगी के बारे में भी जानकारी नहीं है (उदाहरण के लिए बुजुर्ग) आपको ब्राउज़र को नई प्रतिलिपि डाउनलोड करने के लिए बाध्य करना चाहिए जेएस / सीएसएस फ़ाइलें।

यहाँ सबसे अच्छा समाधान है .js / .css फ़ाइल नाम के अंत में टाइमस्टैम्प जोड़ना, या svn संस्करण जोड़ना जो एक महान विचार भी है।

<script src="js/myfile.js?t=<?=time()?>" type="text/javascript"></script>

5

आप केवल अपने कैश को साफ़ करने की कोशिश कर सकते हैं, न कि आपके संपूर्ण ब्राउज़िंग, इतिहास, कुकीज़, पासवर्ड, सहेजे गए फ़ॉर्म डेटा और व्हाट्सएप (डिफ़ॉल्ट)।

फ़ायरफ़ॉक्स 3.5 में, पर जाएं

उपकरण »हाल का इतिहास साफ़ करें ...

फिर सुनिश्चित करें कि "क्लियर नाउ" का चयन करने से पहले केवल "कैश" चुना गया है।

Chrome में (पता नहीं कि आप किस विशेष संस्करण का उपयोग कर रहे हैं, जैसा कि मैं देव बिल्ड का उपयोग करता हूं), पर जाएं

रिंच आइकन (उपकरण) »विकल्प» व्यक्तिगत सामग्री टैब »ब्राउज़िंग डेटा साफ़ करें ...

फिर से, सुनिश्चित करें कि केवल "कैश खाली करें" चेक किया गया है।

वैकल्पिक रूप से, आप फ़ायरफ़ॉक्स या क्रोम में गुप्त विंडो में एक नया निजी सत्र खोलने का प्रयास कर सकते हैं; किसी भी फाइल को (आपकी .JS फाइलों सहित) कैश नहीं करना चाहिए और ब्राउज़ करते समय आप स्वचालित रूप से डाउनलोड और प्रोसेस करें।


Incognito शायद Chrome के लिए जाने का तरीका है।
23

1

मैं एक साइट पर एक छोटी सी चाल का उपयोग कर रहा हूं जो मैं काम कर रहा हूं ... आपके लिए समान कारणों से। मैं छोटे बदलाव करता हूं और जावास्क्रिप्ट कोड जावास्क्रिप्ट कोड द्वारा लोड किया जाता है और यह सुनिश्चित करना चाहता हूं कि मैं हमेशा वर्तमान (गैर-कैश) स्क्रिप्ट के साथ काम कर रहा हूं।

जावास्क्रिप्ट कोड बनाने की कोशिश करें जिसे आप एक PHP फ़ाइल में लोड कर रहे हैं ... बस <?php ?>शुरुआत में डाल दिया है और .php के ऊपर डाल दिया है।

var fileref = document.createElement('script');
fileref.setAttribute("type", "text/javascript");

// The Date added to the file doesn't effect the results but
// helps Internet Explorer be sure to refresh the data and
// not use cache

var d = new Date();

var t = d.getTime();

fileref.setAttribute("src", filename + ".php?date=" + t);

fileref.setAttribute("id", filename);

क्योंकि नाम बदल जाता है, Internet Explorer को लगता है कि यह एक नई फ़ाइल है;)


1
नाम को '.php' में बदलने की आवश्यकता नहीं है। यदि आप 'filename.js? T =' + t डालते हैं तो परिणाम समान होता है। आप इसे '.css' के साथ भी कर सकते हैं। हमारे सभी प्रोडक्शन सिस्टम इस ट्रिक का उपयोग यह प्रमाणित करने के लिए करते हैं कि क्लाइंट सही सामग्री फ़ाइलों का उपयोग करते हैं।
लियोनेल मार्टिन्स

1
एक नोट के रूप में, हम तारीख / समय के बजाय SVN संशोधन संख्या का उपयोग करते हैं। इस तरह से हमें कैशिंग लाभ मिलता है, और केवल तभी ताज़ा करें जब हम वास्तव में प्रतिबद्ध हों।
ग्रू

बहुत बहुत धन्यवाद! इस चाल ने मेरे दिमाग को पूरी तरह से गिरा दिया। मैं दिनों से इस मुद्दे से जूझ रहा हूं और यह मेरे लिए करूंगा। मैंने इसे केवल url के अंत में रखा है: "? <? Php इको टाइम ()?>"
Thrashr888

1

Chrome में आप केवल Ctrlताज़ा बटन दबा सकते हैं और क्लिक कर सकते हैं । मुझे संयोग से यह पता चला।


यह पूरे पृष्ठ का एक कठिन ताज़ा करता है, मुझे नहीं लगता कि यह केवल जावास्क्रिप्ट को ताज़ा करता है।
इवो ​​फ्लिप 13

1

मैं एक अलग टैब में जावास्क्रिप्ट फ़ाइल खोलता हूं, Shift+ ताज़ा करें, सत्यापित करें कि मैं नवीनतम बदलाव देख रहा हूं, फिर Shiftवास्तविक पृष्ठ को ताज़ा करें (वास्तव में, मेरे मामले में, फ्रेमसेट में फ्रेम, जो मामलों को बदतर बनाने के लिए लगता है)। यह लगभग हर समय काम करता है।


0

मैंने इसे स्वयं उपयोग नहीं किया है, लेकिन फ़ायरफ़ॉक्स ऐड-ऑन "क्लियर कैश बटन" उपयोग का हो सकता है। मैं उनके प्रलेखन के माध्यम से पढ़ता हूं, इसलिए मुझे यकीन नहीं है कि यह आपके ब्राउज़िंग इतिहास को भी साफ करता है।


0

Chrome में सामग्री सेटिंग पर जाएं, जावास्क्रिप्ट अक्षम करें और सहेजें।

फिर, जावास्क्रिप्ट को फिर से सक्षम करें।


0

यदि आप जावास्क्रिप्ट के साथ काम कर रहे हैं और जावास्क्रिप्ट परिवर्तनों को प्रतिबिंबित करने के लिए पृष्ठ को फिर से लोड करने के बारे में चिंतित हैं। Chrome डीबगर का उपयोग करने का प्रयास करें, जहाँ आप अपनी लोड की गई जावास्क्रिप्ट फ़ाइल (एस) को परिवर्तन के समय में बदल सकते हैं और बिना किसी पुनः लोड का उपयोग किए नए कार्यों या उन परिवर्तनों का परीक्षण कर सकते हैं जिन्हें आप परीक्षण करना चाहते हैं।


सुपर उपयोगकर्ता में आपका स्वागत है! कृपया प्रश्न को फिर से ध्यान से पढ़ें। आपका उत्तर मूल प्रश्न का उत्तर नहीं देता है
DavidPostill


0

अपनी जावास्क्रिप्ट फ़ाइल के अंत में कुछ डायनामिक डेट फ़ंक्शन जोड़ें। यह ब्राउज़र को अद्यतन जावास्क्रिप्ट फ़ाइल लोड करने के लिए मजबूर करेगा। मतलब, जब .js फ़ाइल को आप जोड़ सकते हैं .... xyz.js?

< ? php echo date('l jS \of F Y h:i:s A') ? >

एक बार आपके डिबगिंग हो जाने के बाद और लाइव होने के लिए तैयार होने पर निश्चित रूप से इसे हटाया जा सकता है।


यह जावास्क्रिप्ट नहीं है।
नेटली एडम्स
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.