पेज को हर 5 सेकंड में कैसे पुनः लोड करें?


183

मैं एक लेआउट को html में परिवर्तित कर रहा हूं; एक बार जब मैं कोड / एचटीएमएल / सीएसएस में बदलाव करता हूं, तो हर बार मुझे एफ 5 को हिट करना होगा। क्या इसके लिए कोई सरल जावास्क्रिप्ट / jQuery समाधान है? यानी मैं स्क्रिप्ट जोड़ने के बाद, हर 5 सेकंड (या किसी अन्य विशिष्ट समय) में पूरे पृष्ठ को फिर से लोड करता हूं।

जवाबों:


382
 <meta http-equiv="refresh" content="5; URL=http://www.yourdomain.com/yoursite.html">

अगर यह स्क्रिप्ट उपयोग सेटटाइमआउट की तरह होना है:

setTimeout(function(){
   window.location.reload(1);
}, 5000);

4
मुझे लगता है कि यह शायद जावास्क्रिप्ट की तुलना में इसे करने का एक बेहतर तरीका है।
रिच

1
यदि उपयोग का मामला यह था कि आगंतुकों के लिए ताज़ा करने के लिए पृष्ठ की आवश्यकता है तो मैं सहमत हो सकता हूं, लेकिन विकास के उद्देश्यों के लिए, कोड का एक ब्लॉक होना, जिसे आप हर बार एक यूआरआई को अपडेट किए बिना पृष्ठ में छोड़ सकते हैं, एक फायदा है। जब डेवलपर संपूर्ण लक्षित दर्शक होता है, तो JS के आधार पर कोई समस्या नहीं होती है।
क्वेंटिन

4
यदि वर्तमान पृष्ठ किसी POST का परिणाम है, तो एक पोस्ट दोहराएगा। यह वांछनीय नहीं हो सकता है, यदि आप जावास्क्रिप्ट में मेटा रीफ़्रेश को दोहराने के लिए देख रहे हैं।
रूबेन

2
वर्तमान पृष्ठ को पुनः लोड करने के लिए आपको पृष्ठ निर्दिष्ट करने की आवश्यकता नहीं है, बस:<meta http-equiv="refresh" content="5">
ashleedawg

145

उसी पृष्ठ को पुनः लोड करने के लिए आपको द्वितीय तर्क की आवश्यकता नहीं है। आप बस उपयोग कर सकते हैं:

 <meta http-equiv="refresh" content="30" />

यह हर 30 सेकंड में एक पुनः लोड करता है।


3
इसे पुनर्निर्देशित करने के लिए उपयोग किए जाने पर हतोत्साहित किया जाता है । इसे पदावनत नहीं किया जाता है। (और यह बहुत काम आता है जब आप एक पृष्ठ को ताज़ा करना चाहते हैं और ajax सीखने के लिए बहुत आलसी हैं :)
DinoCoderSaurus

यह मेरे लिए काम नहीं कर रहा है। इस कोड को इस कोड को बिना किसी लाभ के जोड़ने की कोशिश की। codepen.io/css-support/pen/bspdK
ol

1
@lololololol आपको इसे HTML के पेन सेटिंग्स क्षेत्र में "स्टफ फॉर <हेड>" सेटिंग में जोड़ना होगा। यदि आप इसे वास्तविक स्क्रिप्ट में रखते हैं तो यह काम नहीं करता है।
ब्रेट

23

3 सेकंड के बाद ऑटो पुनः लोड और स्पष्ट कैश के लिए आप जावास्क्रिप्ट सेटइंटरवल फ़ंक्शन का उपयोग करके आसानी से कर सकते हैं। यहाँ सरल कोड है

$(document).ready(function() {
  setInterval(function() {
    cache_clear()
  }, 3000);
});

function cache_clear() {
  window.location.reload(true);
  // window.location.reload(); use this if you do not remove cache
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<p>Auto reload page and clear cache</p>

और आप इसके लिए मेटा का उपयोग भी कर सकते हैं

<meta http-equiv="Refresh" content="5">

पृष्ठ ताज़ा <स्क्रिप्ट> काम कर रहा है, लेकिन क्या आप बता सकते हैं कि यह कैश कैसे साफ़ कर रहा है ?? या यह कैश को रीफ्रेश करने वाला ज्यूस है .. pls स्पष्ट करें।
सिल्वर

stackoverflow.com/questions/5721704/… , यदि आप अधिक झुकना चाहते हैं तो कृपया इसे गूगल करें
शफीकुल इस्लाम


10

IE के लिए एक स्वचालित रिफ्रेश-ऑन-चेंज टूल है। इसे ReloadIt कहा जाता है, और यह http://reloadit.codeplex.com पर उपलब्ध है । नि: शुल्क।

आप एक ऐसा URL चुनते हैं, जिसे आप स्वतः लोड करना चाहते हैं, और परिवर्तनों के लिए निगरानी के लिए एक या अधिक निर्देशिका पथ निर्दिष्ट करें। निगरानी शुरू करने के लिए F12 दबाएं।

यहां छवि विवरण दर्ज करें

इसे सेट करने के बाद, इसे छोटा करें। फिर अपनी सामग्री फ़ाइलों को संपादित करें। जब आप कोई परिवर्तन सहेजते हैं, तो पृष्ठ पुनः लोड हो जाता है। इस तरह:

यहां छवि विवरण दर्ज करें

सरल। आसान।


2
IE के लिए अच्छा उपकरण, और एनिमेटेड चीज के लिए धन्यवाद। मैं इसे कैसे बना सकता हूं?
वसीम शेख

@WasimShaikh - ScreenToGIF का उपयोग करके अपनी स्क्रीन को एनिमेटेड GIF में रिकॉर्ड करें ।
21

5

@JAndy द्वारा प्रदान किया गया उत्तर काम करना चाहिए लेकिन फ़ायरफ़ॉक्स में आपको समस्या का सामना करना पड़ सकता है, window.location.reload (1) ; काम नहीं कर सकता, यह मेरा व्यक्तिगत अनुभव है।

इसलिए मैं सुझाव देना चाहूंगा:

setTimeout(function() { window.location=window.location;},5000);

यह परीक्षण किया है और ठीक काम करता है।


3

यदि आप फ़ायरफ़ॉक्स का उपयोग कर रहे हैं तो एक अच्छा विकल्प XRefresh प्लगइन है । यह आपके पृष्ठ को हर बार फिर से लोड करेगा क्योंकि यह पता लगाता है कि फ़ाइल को संशोधित किया गया है। इसलिए हर 5 सेकंड में सिर्फ रिफ्रेश करने के बजाय, जब आप अपने HTML एडिटर में सेव करते हैं, तो यह रीफ्रेश हो जाएगा।



2

यदि आप फ़ायरफ़ॉक्स में विकसित और परीक्षण कर रहे हैं, तो एक प्लग-इन है, जिसे " ReloadEvery " कहा जाता है, जो आपको निर्दिष्ट अंतराल पर पृष्ठ को फिर से लोड करने की अनुमति देता है।


1

यह 5 सेकंड पर काम करेगा।

5000 मिली सेकंड = 5 सेकंड

इसे लक्ष्य के साथ उपयोग करें _selfया जो आप कभी भी चाहते हैं और जो पेज आप खुद सहित चाहते हैं:

<script type="text/javascript">
function load()
{
setTimeout("window.open('http://YourPage.com', '_self');", 5000);
}
</script>
<body onload="load()"> 

या यह स्वत: स्वयं और कोई लक्ष्य कोड के साथ जो आप चाहते हैं, कभी भी पृष्ठ के साथ:

<script type="text/javascript">
function load()
{
setTimeout("location.href = 'http://YourPage.com';", 5000);
}
</script>
<body onload="load()"> 

या यह केवल उसी पृष्ठ को फिर से लोड करने के लिए है और लक्षित टो हैट जो आप चाहते हैं:

<script type="text/javascript">
function load()
{
setTimeout("window.open(self.location, '_self');", 5000);
}
</script>
<body onload="load()">

सभी 3 समान चीजें करते हैं, बस अलग-अलग तरीकों से।


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