कोई कार्रवाई लागू करें

जब कोई उपयोगकर्ता टूलबार आइकॉन पर क्लिक करता है, तो उसे ऐक्शन कहा जाता है. आम तौर पर, आपके एक्सटेंशन के लिए इसे ऐक्शन आइकॉन कहा जाता है. कोई कार्रवाई, Action API का इस्तेमाल करके एक्सटेंशन की सुविधा को चालू करती है या पॉप-अप खोलती है. इस पेज पर, एक्सटेंशन की सुविधा को चालू करने का तरीका बताया गया है. पॉप-अप का इस्तेमाल करने के लिए, पॉप-अप जोड़ें लेख पढ़ें.

कार्रवाई रजिस्टर करना

chrome.action एपीआई का इस्तेमाल करने के लिए, एक्सटेंशन की मेनिफ़ेस्ट फ़ाइल में "action" पासकोड जोड़ें. इस फ़ील्ड की वैकल्पिक प्रॉपर्टी के बारे में पूरी जानकारी पाने के लिए, chrome.action API रेफ़रंस का मेनिफ़ेस्ट सेक्शन देखें.

manifest.json:

{
  "name": "My Awesome action Extension",
 ...
  "action": {
   ...
  }
 ...
}

कार्रवाई का जवाब देना

जब उपयोगकर्ता ऐक्शन आइकॉन पर क्लिक करता है, तब उसके लिए onClicked हैंडलर रजिस्टर करें. अगर manifest.json फ़ाइल में कोई पॉप-अप रजिस्टर किया गया है, तो यह इवेंट ट्रिगर नहीं होता.

service-worker.js:

chrome.action.onClicked.addListener((tab) => {
  chrome.action.setTitle({
    tabId: tab.id,
    title: `You are on tab: ${tab.id}`});
});

शर्तें पूरी होने पर कार्रवाई चालू करना

chrome.declarativeContent एपीआई की मदद से, पेज के यूआरएल या सीएसएस सिलेक्टर के पेज पर मौजूद एलिमेंट से मैच होने पर, एक्सटेंशन के ऐक्शन आइकॉन को चालू किया जा सकता है. जब किसी एक्सटेंशन का ऐक्शन आइकॉन बंद होता है, तो वह धूसर हो जाता है. अगर उपयोगकर्ता, बंद किए गए आइकॉन पर क्लिक करता है, तो एक्सटेंशन का कॉन्टेक्स्ट मेन्यू दिखता है.

बंद किए गए ऐक्शन का आइकॉन
बंद किए गए ऐक्शन का आइकॉन.

ऐक्शन बैज

बैज, फ़ॉर्मैट किए गए टेक्स्ट के छोटे-छोटे हिस्से होते हैं. इन्हें ऐक्शन आइकॉन के ऊपर रखा जाता है. इससे, एक्सटेंशन की स्थिति या उपयोगकर्ता को कार्रवाई करने की ज़रूरत है या नहीं, जैसी चीज़ों के बारे में पता चलता है. इसका उदाहरण देने के लिए, पानी पीएं सैंपल में "चालू है" वाला बैज दिखाया गया है. इससे उपयोगकर्ता को पता चलता है कि उन्होंने अलार्म सेट कर लिया है. एक्सटेंशन के बंद होने पर, कोई बैज नहीं दिखता. बैज में ज़्यादा से ज़्यादा चार वर्ण हो सकते हैं.

बैज के साथ और बिना बैज वाला एक्सटेंशन आइकॉन.
बैज वाला एक्सटेंशन आइकॉन (बाईं ओर) और बैज के बिना एक्सटेंशन आइकॉन (दाईं ओर).

chrome.action.setBadgeText() को कॉल करके बैज का टेक्स्ट और chrome.action.setBadgeBackgroundColor()` को कॉल करके बैज के बैकग्राउंड का रंग सेट करें.

service-worker.js:

chrome.action.setBadgeText({text: 'ON'});
chrome.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()` को कॉल करके भी टूलटिप सेट या अपडेट किए जा सकते हैं. अगर कोई टूलटिप सेट नहीं है, तो एक्सटेंशन का नाम दिखता है.