मेरे पास एक साइट है जहां मैं पृष्ठ को स्क्रिप्ट टैग में एक डॉक्यूमेंट.लोकेशन का उपयोग करके पुनः लोड होने से रोकना चाहता हूं। मैं फ़ायरफ़ॉक्स में यह कैसे कर सकता हूं?
मेरे पास एक साइट है जहां मैं पृष्ठ को स्क्रिप्ट टैग में एक डॉक्यूमेंट.लोकेशन का उपयोग करके पुनः लोड होने से रोकना चाहता हूं। मैं फ़ायरफ़ॉक्स में यह कैसे कर सकता हूं?
जवाबों:
वास्तव में, Greasemonkey ब्लॉक नहीं करेगा यदि HTML कोड में एक इनलाइन जावास्क्रिप्ट ब्लॉक होता है जैसे कि कोई रीडायरेक्ट:
<script type="text/javascript">
var url = "http://google.com";
document.location.replace(url);
</script>
Greasemonkey, हालांकि विशिष्ट कार्यों के लिए कॉल को ब्लॉक करने के लिए इस्तेमाल किया जा सकता है - बस उन्हें अधिलेखित करें :)। यदि उपरोक्त एक फ़ंक्शन कॉल में लिपटे हुए थे जैसे:
<script type="text/javascript">
function redirect_to(url)
{
document.location.replace(url);
}
</script>
तो फिर तुम सिर्फ Greasemonkey में समारोह को फिर से परिभाषित कर सकते हैं:
function redirect_to(url){ return true }
ब्लॉक इनलाइन को फ़ायरफ़ॉक्स के माध्यम से रीडायरेक्ट करता है
अनिवार्य रूप से फ़ायरफ़ॉक्स किसी location.href.replace
विशेष साइट से तथाकथित जैसे विन्यास के माध्यम से किसी भी डोम हेरफेर को रोकना संभव बनाता है : कॉन्फ़िगर करने योग्य सुरक्षा नीतियां (CAPS)
चेतावनी का एक शब्द: ध्यान दें कि आपकी सुरक्षा सेटिंग्स तब उस डोमेन से सभी कॉल को ब्लॉक कर देंगी location.href.replace
। यदि कोई एप्लिकेशन उस कॉल का उपयोग करता है, तो कॉल को अनुमति देने और दूसरों को ब्लॉक करने का कोई तरीका नहीं है।
स्थान .href.replace को ब्लॉक करने के लिए CAPS सेट करना
इस कार्य के लिए आपको Greasemonkey की आवश्यकता नहीं है। फ़ायरफ़ॉक्स एक अंतर्निहित क्षमता के आधार पर / प्रति साइट के आधार पर DOM ऑब्जेक्ट्स के गुणों / विधियों तक पहुंच को रोकने के लिए आता है। इसे विन्यास योग्य सुरक्षा नीतियां (CAPS) कहा जाता है और इसे 1 में वर्णित किया गया है ।
एक सरल गाइड जो सबसे सरल मामला है:
निम्न पंक्तियों को user.js में जोड़ें:
user_pref ("क्षमता.पुलिस.पॉलिकनेम", "नोफ्रेमबस्टर"); user_pref ("क्षमता.पोलिश.नोफ्रैमबस्टर.साइट्स", " http://www.annoying-site.com ); user_pref ("क्षमता.पोलिश.नोफ्रैमबस्टर.लोकेशन .replace", "noAccess");
बेशक, आपको अपने फ़्रेम को रीडायरेक्ट करने से रोकने के लिए डोमेन को बदलना होगा।
मेरे ब्लॉग (justaddwater.dk) से अधिक गहन स्पष्टीकरण प्राप्त करें: फ़्रेमबस्टर जावास्क्रिप्ट के लिए फ़ायरफ़ॉक्स टिप ।
यदि आप फ़ायरफ़ॉक्स में मौजूद डिबगिंग फ़ीचर का उपयोग करने में सहज हैं , तो घड़ी विधि मेरे लिए काम करती है:
document.watch('location', function() {
return '#';
});
मुझे MDN पर प्रदर्शन इत्यादि के बारे में चेतावनियों की प्रयोज्यता के बारे में निश्चित नहीं है , शायद किसी को इस स्थिति में कुछ अंतर्दृष्टि है।
GreaseMonkey Firefox के लिए ऐड-ऑन बिल्कुल ऐसा करने के लिए बनाया गया है।
YesScript एक्सेंशन को आज़माएं ।
YesScript आपको उन साइटों को ब्लैकलिस्ट करने देता है जिन्हें जावास्क्रिप्ट चलाने की अनुमति नहीं है।