2011-05-11 6 views
6

मुझे वास्तव में इसे एक सुरक्षा सुविधा के रूप में चाहिए - मेरी साइट का विषय संवेदनशील (घरेलू हिंसा) है - हमारे पास साइट पर एक सुरक्षा क्षेत्र है और यदि क्लिक किया गया है तो व्यक्ति को साइट से 'सुरक्षित' साइट पर ले जाया जाता है।मेरी साइट छोड़ने के बाद मैं बैक ब्राउज़र बटन का उपयोग करके लोगों को कैसे रोकूं ताकि वे वापस नहीं आ सकें?

एक बार जब उन्होंने इस क्षेत्र पर क्लिक किया है, तो मैं उन्हें नामित अवधि के लिए वापस आने से रोकना चाहता हूं - (1 घंटा कहें) - इसलिए यदि कोई दुर्व्यवहार कमरे में आया तो आप साइट से बच सकते हैं, और यहां तक ​​कि अगर वे बैक बटन दबाएं, यह स्पष्ट नहीं होगा कि वे कौन सी साइट देख रहे थे।

विचार ??

+3

ध्यान दें कि साइट इतिहास सूची आदि में रहेगी, इसलिए अपने उपयोगकर्ताओं को ब्राउज़र के निजी मोड या इसी तरह की सुविधा का उपयोग करने का सुझाव दें। – Piskvor

+0

@Piskvor: यही कारण है कि मैंने location.replace का उपयोग करने का सुझाव दिया। यह कम से कम वर्तमान पृष्ठ के इतिहास को "सुरक्षित" पृष्ठ से प्रतिस्थापित करेगा जो कि कुछ भी नहीं है। आपका बिंदु पूरी तरह मान्य और ध्यान देने योग्य है। –

+0

बहुत बहुत धन्यवाद - वास्तव में आपके प्रतिक्रियाओं की सराहना करते हैं - चीयर्स ब्रायन – lyndsey

उत्तर

4

आप हमेशा बैक बटन ईवेंट कैप्चर कर सकते हैं और उपयोगकर्ता को कुछ यादृच्छिक "सुरक्षित" यूआरएल भेज सकते हैं;

window.onbeforeunload = function() { 
    location.replace('http://www.bbc.co.uk'); 
    return "This session is expired and the history altered."; 
} 

समारोह ब्लॉक आप भी बस एक कुकी 'noreturn' कहा जाता है सेट कर सकते हैं के भीतर जो जब भी तो अगले एक घंटे के लिए "सुरक्षित" साइट के लिए हर बार पुन: निर्देशित कर सकता है के लिए अपनी साइट की जांच के किसी भी पृष्ठ।

controlling the back button and the user's browser history here के सभी पहलुओं पर एक सभ्य लेख है;

0

स्कॉट हंसेलमैन से निम्नलिखित anwser देखें। आप क्वेरीस्ट्रिंग में एक यादृच्छिक कुंजी भी डाल सकते हैं और किसी सूची के विरुद्ध मान को मान्य कर सकते हैं और यदि आवश्यक कुंजी आपके अनुमति उपयोगकर्ताओं में नहीं है तो आवश्यक कार्रवाई करें।

संबंधित मुद्दे