यदि आप अन्य सभी सुझावों की कोशिश करते हैं, और उनमें से किसी को भी काम करने के लिए नहीं मिल सकता है (जैसे मैं नहीं कर सकता), तो यहां कुछ आप कोशिश कर सकते हैं जो उपयोगी हो सकता है।
एचटीएमएल
<a class="refresh-this-frame" rel="#iframe-id-0">Refresh</a>
<iframe src="" id="iframe-id-0"></iframe>
जे एस
$('.refresh-this-frame').click(function() {
var thisIframe = $(this).attr('rel');
var currentState = $(thisIframe).attr('src');
function removeSrc() {
$(thisIframe).attr('src', '');
}
setTimeout (removeSrc, 100);
function replaceSrc() {
$(thisIframe).attr('src', currentState);
}
setTimeout (replaceSrc, 200);
});
मैंने शुरू में आरडब्ल्यूडी और क्रॉस-ब्राउज़र परीक्षण के साथ कुछ समय के लिए प्रयास करने और बचाने के लिए सेट किया। मैं एक त्वरित पृष्ठ बनाना चाहता था, जो समूहों में iframes का एक समूह रखे, जिसे मैं दिखाऊंगा / छिपाऊँगा। तार्किक रूप से आप आसानी से और जल्दी से किसी भी फ्रेम को ताज़ा करने में सक्षम होना चाहते हैं।
मुझे ध्यान देना चाहिए कि वर्तमान में मैं जिस परियोजना पर काम कर रहा हूं, वह इस परीक्षण-बिस्तर में उपयोग में है, एक पृष्ठ वाली साइट है जिसमें अनुक्रमित स्थान (जैसे index.html # home) है। हो सकता है कि मेरे विशेष फ्रेम को रीफ्रेश करने के लिए मुझे कोई अन्य समाधान क्यों नहीं मिला।
यह कहने के बाद, मुझे पता है कि यह दुनिया की सबसे साफ चीज नहीं है, लेकिन यह मेरे उद्देश्यों के लिए काम करती है। आशा है कि यह किसी की मदद करता है। अब अगर केवल मैं पता लगा सकता हूँ कि आईट्रम को पेरेंट पेज को स्क्रॉल करने से कैसे रोकें तो हर बार आइफ्रेम के अंदर एनीमेशन ...
संपादित करें:
मुझे एहसास हुआ कि यह iframe को "ताज़ा" नहीं करता है जैसे मुझे उम्मीद थी कि यह होगा। यह iframe के प्रारंभिक स्रोत को फिर से लोड करेगा। फिर भी यह पता नहीं लगा सकता कि मुझे काम करने के अन्य विकल्पों में से कोई क्यों नहीं मिला।
अद्यतन:
कारण यह है कि मैं काम करने के लिए अन्य तरीकों में से कोई भी नहीं प्राप्त कर सका क्योंकि मैं उन्हें क्रोम में परीक्षण कर रहा था, और क्रोम आपको आइफ्रेम की सामग्री तक पहुंचने की अनुमति नहीं देगा (स्पष्टीकरण: क्या यह संभावना है कि क्रोम समर्थन सामग्री के भविष्य के रिलीज जब iFrame स्थानीय html फ़ाइल से एक स्थानीय HTML फ़ाइल लोड करता है / तो सामग्रीडायरेक्टमेंट। यदि यह उसी स्थान से उत्पन्न नहीं होता है (अब तक मैं इसे समझता हूं)। आगे के परीक्षण पर, मैं FF में या तो कंटेंटव्यू तक नहीं पहुँच सकता।
जेएस पर विचार किया
$('.refresh-this-frame').click(function() {
var targetID = $(this).attr('rel');
var targetSrc = $(targetID).attr('src');
var cleanID = targetID.replace("#","");
var chromeTest = ( navigator.userAgent.match(/Chrome/g) ? true : false );
var FFTest = ( navigator.userAgent.match(/Firefox/g) ? true : false );
if (chromeTest == true) {
function removeSrc() {
$(targetID).attr('src', '');
}
setTimeout (removeSrc, 100);
function replaceSrc() {
$(targetID).attr('src', targetSrc);
}
setTimeout (replaceSrc, 200);
}
if (FFTest == true) {
function removeSrc() {
$(targetID).attr('src', '');
}
setTimeout (removeSrc, 100);
function replaceSrc() {
$(targetID).attr('src', targetSrc);
}
setTimeout (replaceSrc, 200);
}
if (chromeTest == false && FFTest == false) {
var targetLoc = (document.getElementById(cleanID).contentWindow.location).toString();
function removeSrc() {
$(targetID).attr('src', '');
}
setTimeout (removeSrc, 100);
function replaceSrc2() {
$(targetID).attr('src', targetLoc);
}
setTimeout (replaceSrc2, 200);
}
});
src
विशेषता को स्वयं सेट करना साफ नहीं है? यह एकमात्र समाधान प्रतीत होता है जो ब्राउज़रों और डोमेन के पार काम करता है