कार्रवाई वह होती है जो उपयोगकर्ता के टूलबार आइकॉन पर क्लिक करने के बाद होती है. आम तौर पर, इसे आपके एक्सटेंशन के लिए ऐक्शन आइकॉन कहा जाता है. कोई कार्रवाई, ऐक्शन एपीआई का इस्तेमाल करके एक्सटेंशन की सुविधा चालू करती है या पॉप-अप खोलती है. इस पेज पर, एक्सटेंशन की सुविधा को चालू करने का तरीका बताया गया है. पॉप-अप का इस्तेमाल करने के लिए, पॉप-अप जोड़ना लेख पढ़ें.
कार्रवाई रजिस्टर करें
browser.action API का इस्तेमाल करने के लिए, एक्सटेंशन की मेनिफ़ेस्ट फ़ाइल में "action" कुंजी जोड़ें. इस फ़ील्ड की वैकल्पिक प्रॉपर्टी के बारे में पूरी जानकारी के लिए, browser.action एपीआई के संदर्भ के मेनिफ़ेस्ट सेक्शन देखें.
manifest.json:
{
"name": "My Awesome action Extension",
...
"action": {
...
}
...
}
कार्रवाई का जवाब देना
जब उपयोगकर्ता ऐक्शन आइकॉन पर क्लिक करे, तब onClicked हैंडलर को रजिस्टर करें. अगर manifest.json फ़ाइल में कोई पॉप-अप रजिस्टर किया गया है, तो यह इवेंट ट्रिगर नहीं होता.
service-worker.js:
browser.action.onClicked.addListener((tab) => {
browser.action.setTitle({
tabId: tab.id,
title: `You are on tab: ${tab.id}`});
});
शर्तों के हिसाब से कार्रवाई चालू करना
browser.declarativeContent एपीआई की मदद से, पेज के यूआरएल के आधार पर या जब सीएसएस सिलेक्टर, पेज पर मौजूद एलिमेंट से मेल खाते हैं, तब एक्सटेंशन के ऐक्शन आइकॉन को चालू किया जा सकता है. जब किसी एक्सटेंशन के ऐक्शन आइकॉन को बंद कर दिया जाता है, तो आइकॉन धूसर हो जाता है. अगर उपयोगकर्ता, बंद किए गए आइकॉन पर क्लिक करता है, तो एक्सटेंशन का कॉन्टेक्स्ट मेन्यू दिखता है.
ऐक्शन बैज
बैज, फ़ॉर्मैट किया गया टेक्स्ट होता है. इसे कार्रवाई के आइकॉन के ऊपर रखा जाता है, ताकि एक्सटेंशन की स्थिति या उपयोगकर्ता के लिए ज़रूरी कार्रवाइयों के बारे में बताया जा सके. इसे दिखाने के लिए, पानी पिएं सैंपल में "चालू है" वाला बैज दिखता है. इससे उपयोगकर्ता को पता चलता है कि उसने अलार्म सेट कर लिया है. जब एक्सटेंशन काम नहीं कर रहा होता है, तब कुछ भी नहीं दिखता. बैज में ज़्यादा से ज़्यादा चार वर्ण हो सकते हैं.
browser.action.setBadgeText() को कॉल करके बैज का टेक्स्ट और browser.action.setBadgeBackgroundColor() को कॉल करके बैकग्राउंड का रंग सेट करें.
service-worker.js:
browser.action.setBadgeText({text: 'ON'});
browser.action.setBadgeBackgroundColor({color: '#4688F1'});
टूलटिप
manifest.json फ़ाइल में, "action" कुंजी के नीचे मौजूद "default_title" फ़ील्ड में टूलटिप रजिस्टर करें.
manifest.json:
{
"name": "Tab Flipper",
...
"action": {
"default_title": "Press Ctrl(Win)/Command(Mac)+Shift+Right/Left to flip tabs"
}
...
}
action.setTitle() को कॉल करके भी टूलटिप सेट या अपडेट की जा सकती हैं. अगर कोई टूलटिप सेट नहीं की जाती है, तो एक्सटेंशन का नाम दिखता है.