ब्राउजर पर पेज लाइफ के माध्यम से कुकी को मॉनिटर करने के लिए सबसे अच्छा जेएस या JQuery- विशिष्ट दृष्टिकोण क्या है और कुकी चालू होने पर एक ईवेंट ट्रिगर करें?Jquery कुकी मॉनीटर
उत्तर
जहां तक मुझे पता है, change
(या समान) ईवेंट को सीधे कुकी पर बांधना संभव नहीं है। इसके बजाए, मैं इस दृष्टिकोण के लिए जाऊंगा:
एक ऐसे परागक बनाएं जो प्रत्येक एक्स मिलीसेकंड के पहले ज्ञात मान से कुकी मान की तुलना करता है।
// basic functions from the excellent http://www.quirksmode.org/js/cookies.html
function readCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
}
return null;
}
/////////////////////////////////
// ACTUAL FUN STUFF BELOW
/////////////////////////////////
var cookieRegistry = [];
function listenCookieChange(cookieName, callback) {
setInterval(function() {
if (cookieRegistry[cookieName]) {
if (readCookie(cookieName) != cookieRegistry[cookieName]) {
// update registry so we dont get triggered again
cookieRegistry[cookieName] = readCookie(cookieName);
return callback();
}
} else {
cookieRegistry[cookieName] = readCookie(cookieName);
}
}, 100);
}
प्रयोग तो कुछ इस तरह होगा:
listenCookieChange('foo', function() {
alert('cookie foo has changed!');
});
नोट: इस परीक्षण नहीं किया गया है और बस कैसे मैं इस समस्या के दृष्टिकोण होगा की एक त्वरित प्रदर्शन है।
संपादित करें: मैंने अभी इसका परीक्षण किया है और यह काम करता है।See example :)
cookies
के लिए jQuery
प्लगइन है।
http://plugins.jquery.com/project/Cookie
यह एक HTML दस्तावेज़ में कुकीज़ का उपयोग करने की मुश्किल नहीं है, वे document.cookie
में रहते हैं।
<!-- Add cookie -->
$.cookie('cookieName':'cookieValue');
<!-- get cookie -->
$.cookie('cookieName');
<!-- removecookie -->
$.cookie('cookieName', null);
इसके अतिरिक्त कुकी जोड़ने के लिए विकल्प तर्क हैं, उदा। समाप्ति।
हालांकि आपके प्रश्न के उत्तर में, मुझे वास्तव में नहीं लगता कि आप दुर्भाग्यवश कुकीज़ पर ईवेंट श्रोता लागू कर सकते हैं।
आपके कोड में खराब वाक्यविन्यास है। आप जावास्क्रिप्ट में एचटीएमएल टिप्पणियों का उपयोग कर रहे हैं और पहले उदाहरण में 'कुकी नाम' और 'कुकी वाल्यू' के बीच कोलन को अल्पविराम की आवश्यकता है। यह डाउनवोट का कारण हो सकता है। – benekastah
पता है कि इससे कुछ अजीब चीज़ों में मदद मिली। मैं एक मोबाइल वेबपैप पर Google अनुवाद (http://translate.google.com/translate_tools?hl=hi) का उपयोग करने की कोशिश कर रहा था और हर बार भाषा बदल जाती है, यह दस्तावेज़ के पहले बच्चे के रूप में शीर्ष पर एक बार डालने लगा। तन । अब मैं 'googtrans' कुकी को ट्रैक कर रहा हूं और यह
listenCookieChange('googtrans', function() {
$(document.body).css('top','0px');
});
- 1. (jQuery) कुकी
- 2. jQuery कुकी दृढ़ता
- 3. jQuery कुकी समाप्ति मान
- 4. jQuery अद्यतन कुकी मूल्य
- 5. jQuery $। कुकी सर्वर प्रतिक्रिया
- 6. पढ़ कुकी मान jQuery
- 7. Jquery रोक एचटीएमएल एन्कोडिंग कुकी
- 8. JQuery jsession कुकी को सर्वर
- 9. Jquery कुकी प्लगइन - एकाधिक मूल्य?
- 10. jQuery कुकी वास्तव में कुकी सेट क्यों नहीं करती है?
- 11. एकाधिक मॉनीटर
- 12. प्राथमिक मॉनीटर
- 13. jQuery AJAX रिस्पॉन्स सेट कुकी हैडर
- 14. jquery कुकी सेट मूल्य को बूलियन सत्य
- 15. कोड मॉनीटर के रूप में प्रतिबद्ध मॉनीटर का उपयोग
- 16. एकाधिक मॉनीटर पर SetConsoleWindowInfo
- 17. कम-रिज़ॉल्यूशन मॉनीटर
- 18. मॉनीटर आईआईएस 6.0
- 19. उपयोगकर्ता कैसे कई मॉनीटर
- 20. ओरेकल तालिका परिवर्तन मॉनीटर
- 21. कुकी
- 22. कुकी
- 23. ब्राउज़र पुनरारंभ करने के बाद jquery कुकी गायब हो जाती है? कुकी फ़ंक्शन के लिए
- 24. JQuery कुकी विस्तार एक पथ के साथ एक कुकी निर्धारित करेगा लेकिन पढ़ नहीं होगा यह
- 25. एकाधिक मॉनीटर के लिए विकास
- 26. जावा मॉनीटर कितने भारी हैं?
- 27. प्रक्रिया। स्टार्ट और ड्यूल मॉनीटर
- 28. पता लगाएं कि मॉनीटर सी #
- 29. WPF, Winforms, और दोहरी मॉनीटर
- 30. लॉक स्टेटमेंट बनाम मॉनीटर। विधि
नोट: यह केवल कुकी परिवर्तन घटनाओं पर ट्रिगर किया गया है। मुझे ** कुकी सृजन ** की जांच करने की आवश्यकता है और इस प्रकार इस तरह के कोड को संशोधित किया गया है: '... अगर (कुकी रजिस्ट्री [कुकी नाम] || readCookie (cookieName)! = Null) {... ' –
हाय अरोन, इस ठीक के लिए धन्यवाद! वास्तव में धन्यवाद। यह 2017 है और मुझे 'listenCookieChange() 'के लिए' लगातार-वापसी 'के बारे में एस्लिंट नियम के साथ एक समस्या का सामना करना पड़ रहा है, जहां' setInterval' है। क्या आप एस्लिंट को खुश करने के लिए अपना उत्तर अपडेट कर सकते हैं? एस्लिंट कार्यों को अक्षम करना। – Sylar