বিবরণ
ব্রাউজারের ট্যাব সিস্টেমের সাথে ইন্টার্যাক্ট করতে chrome.tabs API ব্যবহার করুন। ব্রাউজারে ট্যাব তৈরি, পরিবর্তন ও নতুন করে সাজাতে আপনি এই API ব্যবহার করতে পারবেন।
ট্যাব API শুধু ট্যাব ম্যানিপুলেট ও ম্যানেজ করার ফিচারই অফার করে না, এটি ট্যাবের ভাষা শনাক্ত করতে, স্ক্রিনশট নিতে এবং ট্যাবের কন্টেন্ট স্ক্রিপ্টের সাথে যোগাযোগ করতেও পারে।
অনুমতি
বেশিরভাগ ফিচার ব্যবহার করার জন্য কোনও অনুমতির প্রয়োজন হয় না। যেমন: নতুন ট্যাব তৈরি করা, ট্যাব রিলোড করা, অন্য URL-এ নেভিগেট করা ইত্যাদি।
Tabs API নিয়ে কাজ করার সময় ডেভেলপারদের তিনটি অনুমতি সম্পর্কে সচেতন থাকতে হবে।
- "ট্যাব" সংক্রান্ত অনুমতি
এই অনুমতি
browser.tabsনেমস্পেস অ্যাক্সেস করার সুবিধা দেয় না। পরিবর্তে, এটিtabs.Tabইনস্ট্যান্সের চারটি সংবেদনশীল প্রপার্টির জন্যtabs.query()কল করার ক্ষমতা এক্সটেনশনকে প্রদান করে:url,pendingUrl,titleএবংfavIconUrl।{ "name": "My extension", ... "permissions": [ "tabs" ], ... }- হোস্টের অনুমতি
হোস্ট সংক্রান্ত অনুমতি কোনও এক্সটেনশনকে ম্যাচিং ট্যাবের চারটি সংবেদনশীল
tabs.Tabপ্রপার্টি পড়তে ও কোয়েরি করতে দেয়। এছাড়াও, তারাtabs.captureVisibleTab(),scripting.executeScript(),scripting.insertCSS()এবংscripting.removeCSS()-এর মতো পদ্ধতি ব্যবহার করে সরাসরি ম্যাচিং ট্যাবের সাথে ইন্টার্যাক্ট করতে পারবেন।{ "name": "My extension", ... "host_permissions": [ "http://*/*", "https://*/*" ], ... }- "activeTab" অনুমতি
ব্যবহারকারীর অনুরোধের ভিত্তিতে
activeTabবর্তমান ট্যাবের জন্য এক্সটেনশনকে সাময়িক হোস্ট সংক্রান্ত অনুমতি প্রদান করে। হোস্টের অনুমতির মতো,activeTabকোনও সতর্কতা ট্রিগার করে না।{ "name": "My extension", ... "permissions": [ "activeTab" ], ... }
যেসব ক্ষেত্রে ব্যবহার করা যাবে
নিম্নলিখিত বিভাগে কিছু সাধারণ ব্যবহারের উদাহরণ দেওয়া হল।
নতুন ট্যাবে এক্সটেনশন পৃষ্ঠা খুলুন
এক্সটেনশনের জন্য একটি সাধারণ প্যাটার্ন হল এক্সটেনশন ইনস্টল করার সময় একটি নতুন ট্যাবে অনবোর্ডিং পৃষ্ঠা খোলা। এটি কীভাবে করতে হয় তা নিম্নলিখিত উদাহরণ থেকে দেখুন।
background.js:
browser.runtime.onInstalled.addListener(({reason}) => {
if (reason === 'install') {
browser.tabs.create({
url: "onboarding.html"
});
}
});
বর্তমান ট্যাব পান
এই উদাহরণে দেখানো হয়েছে যে কীভাবে কোনও এক্সটেনশনের সার্ভিস ওয়ার্কার বর্তমানে-ফোকাস করা উইন্ডো (অথবা সবচেয়ে সম্প্রতি-ফোকাস করা উইন্ডো, যদি কোনও Chrome উইন্ডো ফোকাস করা না থাকে) থেকে অ্যাক্টিভ ট্যাব ফিরিয়ে আনতে পারে। এটি সাধারণত ব্যবহারকারীর বর্তমান ট্যাব হিসেবে ভাবা যেতে পারে।
async function getCurrentTab() {
let queryOptions = { active: true, lastFocusedWindow: true };
// `tab` will either be a `tabs.Tab` instance or `undefined`.
let [tab] = await browser.tabs.query(queryOptions);
return tab;
}
function getCurrentTab(callback) {
let queryOptions = { active: true, lastFocusedWindow: true };
browser.tabs.query(queryOptions, ([tab]) => {
if (browser.runtime.lastError)
console.error(browser.runtime.lastError);
// `tab` will either be a `tabs.Tab` instance or `undefined`.
callback(tab);
});
}
নির্দিষ্ট ট্যাব মিউট করুন
এই উদাহরণে দেখানো হয়েছে যে কীভাবে কোনও এক্সটেনশন নির্দিষ্ট ট্যাবের জন্য মিউট করা স্ট্যাটাস টগল করতে পারে।
async function toggleMuteState(tabId) {
const tab = await browser.tabs.get(tabId);
const muted = !tab.mutedInfo.muted;
await browser.tabs.update(tabId, {muted});
console.log(`Tab ${tab.id} is ${muted ? "muted" : "unmuted"}`);
}
function toggleMuteState(tabId) {
browser.tabs.get(tabId, async (tab) => {
let muted = !tab.mutedInfo.muted;
await browser.tabs.update(tabId, { muted });
console.log(`Tab ${tab.id} is ${ muted ? "muted" : "unmuted" }`);
});
}
ক্লিক করা হলে বর্তমান ট্যাবটি প্রথম অবস্থানে সরান
এই উদাহরণে দেখানো হয়েছে যে ড্র্যাগ করার প্রসেস চলাকালীন বা না চলাকালীন কীভাবে ট্যাব সরানো যায়। এই উদাহরণে browser.tabs.move ব্যবহার করা হলেও,
ট্যাব টেনে আনার সময় ট্যাব পরিবর্তন করে এমন অন্যান্য কলের ক্ষেত্রেও আপনি একই ওয়েটিং প্যাটার্ন ব্যবহার করতে পারবেন।
browser.tabs.onActivated.addListener(moveToFirstPosition);
async function moveToFirstPosition(activeInfo) {
try {
await browser.tabs.move(activeInfo.tabId, {index: 0});
console.log("Success.");
} catch (error) {
if (error == "Error: Tabs cannot be edited right now (user may be dragging a tab).") {
setTimeout(() => moveToFirstPosition(activeInfo), 50);
} else {
console.error(error);
}
}
}
browser.tabs.onActivated.addListener(moveToFirstPositionMV2);
function moveToFirstPositionMV2(activeInfo) {
browser.tabs.move(activeInfo.tabId, { index: 0 }, () => {
if (browser.runtime.lastError) {
const error = browser.runtime.lastError;
if (error == "Error: Tabs cannot be edited right now (user may be dragging a tab).") {
setTimeout(() => moveToFirstPositionMV2(activeInfo), 50);
} else {
console.error(error);
}
} else {
console.log("Success.");
}
});
}
বেছে নেওয়া ট্যাবের কন্টেন্ট স্ক্রিপ্টে মেসেজ পাঠান
এই উদাহরণে দেখানো হয়েছে যে কীভাবে কোনও এক্সটেনশনের সার্ভিস ওয়ার্কার tabs.sendMessage() ব্যবহার করে নির্দিষ্ট ব্রাউজার ট্যাবে কন্টেন্ট স্ক্রিপ্টের সাথে যোগাযোগ করতে পারে।
function sendMessageToActiveTab(message) {
const [tab] = await browser.tabs.query({ active: true, lastFocusedWindow: true });
const response = await browser.tabs.sendMessage(tab.id, message);
// TODO: Do something with the response.
}
এক্সটেনশনের উদাহরণ
আরও Tabs API এক্সটেনশন ডেমোর জন্য, নিম্নলিখিত যেকোনও একটি এক্সপ্লোর করুন:
ধরন
MutedInfo
ট্যাবের মিউট করা স্ট্যাটাস এবং শেষবার স্ট্যাটাস পরিবর্তন করার কারণ।
প্রপার্টি
-
extensionId
স্ট্রিং ঐচ্ছিক
মিউট করা স্ট্যাটাস পরিবর্তন করেছে এমন এক্সটেনশনের আইডি। মিউট করা স্ট্যাটাস শেষবার পরিবর্তন করার কারণ এক্সটেনশন না হলে সেট করা হয় না।
-
মিউট করা হয়েছে
বুলিয়ান
ট্যাবটি মিউট করা আছে কিনা (সাউন্ড বাজানো থেকে আটকানো)। ট্যাবটি মিউট করা থাকতে পারে, এমনকি এটি সাউন্ড না চালালেও বা বর্তমানে সাউন্ড না চালালেও। 'মিউট করা' অডিও ইন্ডিকেটর দেখাচ্ছে কিনা তার সমতুল্য।
-
কারণ
MutedInfoReason optional
ট্যাবটি মিউট বা আনমিউট করার কারণ। ট্যাবের মিউট স্ট্যাটাস কখনও পরিবর্তন করা না হলে সেট করা হয় না।
MutedInfoReason
এমন একটি ইভেন্ট যার কারণে মিউট করা স্ট্যাটাস পরিবর্তন হয়েছে।
Enum
"ব্যবহারকারী"
ব্যবহারকারীর ইনপুট অ্যাকশন মিউট করা স্ট্যাটাস সেট করেছে।
"ক্যাপচার"
ট্যাব ক্যাপচার শুরু করা হয়েছে, মিউট করা স্ট্যাটাস পরিবর্তন করতে বাধ্য করা হচ্ছে।
"এক্সটেনশন"
এক্সটেনশনআইডি ফিল্ড দ্বারা শনাক্ত করা একটি এক্সটেনশন, মিউট করা স্ট্যাটাস সেট করে।
Tab
প্রপার্টি
-
অ্যাক্টিভ আছে
বুলিয়ান
ট্যাবটি তার উইন্ডোতে অ্যাক্টিভ আছে কিনা। এর অর্থ এই নয় যে উইন্ডোটি ফোকাস করা হয়েছে।
-
audible
বুলিয়ান ঐচ্ছিক
Chrome 45+ ব্রাউজার।* Chrome 148 থেকেগত কয়েক সেকেন্ডে ট্যাব থেকে কোনও সাউন্ড তৈরি হয়েছে কিনা (তবে মিউট করা থাকলে শোনা নাও যেতে পারে)। 'স্পিকার অডিও' ইন্ডিকেটর দেখানো হচ্ছে কিনা তার সমতুল্য।
-
autoDiscardable
বুলিয়ান
Chrome 54+ Chrome 148 থেকে browser.*রিসোর্স কম থাকলে, ব্রাউজার অটোমেটিক ট্যাবটি বাতিল করতে পারবে কিনা।
-
বাতিল করা হয়েছে
বুলিয়ান
Chrome 54+ Chrome 148 থেকে browser.*ট্যাবটি বাতিল করা হয়েছে কিনা। বাতিল করা ট্যাব হল এমন একটি ট্যাব যার কন্টেন্ট মেমরি থেকে আনলোড করা হয়েছে, কিন্তু এখনও ট্যাব বারে দেখা যাচ্ছে। পরের বার এটি অ্যাক্টিভেট করা হলে, এর কন্টেন্ট আবার লোড করা হয়।
-
favIconUrl
স্ট্রিং ঐচ্ছিক
ট্যাবের ফেভিকনের URL। এক্সটেনশনের কাছে
"tabs"অনুমতি থাকলে অথবা পৃষ্ঠার জন্য হোস্টের অনুমতি থাকলে তবেই এই প্রপার্টি থাকে। ট্যাব লোড হওয়ার সময় এটি খালি স্ট্রিংও হতে পারে। -
ফ্রিজ হয়ে গেছে
বুলিয়ান
Chrome 132+ Chrome 148 থেকে browser.*ট্যাবটি ফ্রিজ হয়ে গেছে কিনা। ফ্রিজ করা ট্যাব ইভেন্ট হ্যান্ডলার বা টাইমার সহ কোনও টাস্ক এক্সিকিউট করতে পারে না। এটি ট্যাব বারে দেখা যায় এবং এর কন্টেন্ট মেমরিতে লোড করা হয়। অ্যাক্টিভেট করার পরে এটি আনফ্রোজেন হয়ে যায়।
-
groupId
নম্বর
Chrome 88+ Chrome 148 থেকে browser.*ট্যাবটি যে গ্রুপের অন্তর্গত, সেই গ্রুপের আইডি।
-
উচ্চতা
নম্বর ঐচ্ছিক
পিক্সেলে ট্যাবের উচ্চতা।
-
হাইলাইট করা হয়েছে
বুলিয়ান
ট্যাবটি হাইলাইট করা আছে কিনা।
-
id
নম্বর ঐচ্ছিক
ট্যাবের আইডি। ব্রাউজার সেশনে ট্যাব আইডি অনন্য হয়। কিছু পরিস্থিতিতে কোনও ট্যাবে আইডি অ্যাসাইন করা নাও থাকতে পারে; যেমন,
sessionsAPI ব্যবহার করে ফরেন ট্যাব কোয়েরি করার সময়, যেক্ষেত্রে সেশন আইডি থাকতে পারে। অ্যাপ ও devtools উইন্ডোর জন্য ট্যাব আইডিchrome.tabs.TAB_ID_NONE-এ সেট করা যেতে পারে। -
ছদ্মবেশী মোড
বুলিয়ান
ট্যাবটি ছদ্মবেশী উইন্ডোতে আছে কিনা।
-
সূচি
নম্বর
উইন্ডোর মধ্যে ট্যাবের শূন্য-ভিত্তিক সূচক।
-
lastAccessed
নম্বর
Chrome 121+ Chrome 148 থেকে browser.*শেষবার যখন ট্যাবটি তার উইন্ডোতে অ্যাক্টিভ হয়েছিল, তখন থেকে মিলিসেকেন্ডের সংখ্যা হিসাবে।
-
mutedInfo
MutedInfo ঐচ্ছিক
Chrome 46+ Chrome 148 থেকে browser.*ট্যাবের মিউট করা স্ট্যাটাস এবং শেষবার স্ট্যাটাস পরিবর্তন করার কারণ।
-
openerTabId
নম্বর ঐচ্ছিক
এই ট্যাবটি যে ট্যাব খুলেছে সেটির আইডি, যদি থাকে। ওপেনার ট্যাব এখনও থাকলে তবেই এই প্রপার্টি থাকে।
-
pendingUrl
স্ট্রিং ঐচ্ছিক
Chrome 79+ Chrome 148 থেকে browser.*ট্যাবটি যে URL-এ নেভিগেট করছে, সেটি কমিট করার আগে। এই প্রপার্টি তখনই থাকে যখন এক্সটেনশনের কাছে
"tabs"অনুমতি থাকে বা পৃষ্ঠার জন্য হোস্টের অনুমতি থাকে এবং একটি মুলতুবি নেভিগেশন থাকে। -
পিন করা হয়েছে
বুলিয়ান
ট্যাবটি পিন করা আছে কিনা।
-
বেছে নেওয়া হয়েছে
বুলিয়ান
বন্ধ করে দেওয়া হয়েছেtabs.Tab.highlightedব্যবহার করুন।ট্যাবটি বেছে নেওয়া হয়েছে কিনা।
-
sessionId
স্ট্রিং ঐচ্ছিক
sessionsAPI থেকে পাওয়া ট্যাব অনন্যভাবে শনাক্ত করতে সেশন আইডি ব্যবহার করা হয়। -
splitViewId
নম্বর ঐচ্ছিক
Chrome 140+ Chrome 148 থেকে browser.*ট্যাবটি যে স্প্লিট ভিউয়ের অন্তর্গত সেটির আইডি।
-
স্ট্যাটাস
TabStatus ঐচ্ছিক
ট্যাবের লোডিং স্ট্যাটাস।
-
শীর্ষক
স্ট্রিং ঐচ্ছিক
ট্যাবের শীর্ষক। এক্সটেনশনের কাছে
"tabs"অনুমতি থাকলে অথবা পৃষ্ঠার জন্য হোস্টের অনুমতি থাকলে তবেই এই প্রপার্টি থাকে। -
URL
স্ট্রিং ঐচ্ছিক
ট্যাবের মূল ফ্রেমের শেষবার কমিট করা URL। এক্সটেনশনের কাছে
"tabs"অনুমতি থাকলে অথবা পৃষ্ঠার জন্য হোস্টের অনুমতি থাকলে তবেই এই প্রপার্টি থাকে। ট্যাবটি এখনও কমিট করা না হলে এটি একটি খালি স্ট্রিং হতে পারে। এছাড়াও,Tab.pendingUrlদেখুন। -
প্রস্থ
নম্বর ঐচ্ছিক
পিক্সেলে ট্যাবের প্রস্থ।
-
windowId
নম্বর
ট্যাবটি যে উইন্ডোতে আছে সেটির আইডি।
TabStatus
ট্যাবের লোডিং স্ট্যাটাস।
Enum
"আনলোড করা হয়েছে"
"লোড হচ্ছে"
"সম্পূর্ণ"
WindowType
উইন্ডোর ধরন।
Enum
"স্বাভাবিক"
"পপ-আপ"
"প্যানেল"
"অ্যাপ"
"devtools"
ZoomSettings
ট্যাবে জুম পরিবর্তন কীভাবে এবং কোন স্কোপে ম্যানেজ করা হয় তা নির্ধারণ করে।
প্রপার্টি
-
defaultZoomFactor
নম্বর ঐচ্ছিক
Chrome 43+ ব্রাউজার।* Chrome 148 থেকেtabs.getZoomSettings-এ কল করার সময় বর্তমান ট্যাবের জন্য ডিফল্ট জুম লেভেলে ফিরে যেতে ব্যবহার করা হয়।
-
মোড
ZoomSettingsMode ঐচ্ছিক
জুম পরিবর্তন কীভাবে ম্যানেজ করা হয় তা ব্যাখ্যা করে, অর্থাৎ, পৃষ্ঠার প্রকৃত স্কেলিংয়ের জন্য কোন এন্টিটি দায়ী; ডিফল্ট হিসেবে
automaticথাকে। -
স্কোপ
ZoomSettingsScope ঐচ্ছিক
পৃষ্ঠার উৎসের জন্য জুম পরিবর্তন বজায় থাকবে নাকি শুধুমাত্র এই ট্যাবে কার্যকর হবে তা নির্ধারণ করে;
automaticমোডে থাকলে ডিফল্ট হিসেবেper-originএবং অন্যথায়per-tabহয়।
ZoomSettingsMode
জুম পরিবর্তন কীভাবে ম্যানেজ করা হয় তা ব্যাখ্যা করে, অর্থাৎ, পৃষ্ঠার প্রকৃত স্কেলিংয়ের জন্য কোন এন্টিটি দায়ী; ডিফল্ট হিসেবে automatic-এ সেট করা থাকে।
Enum
"অটোমেটিক"
জুম সংক্রান্ত পরিবর্তন ব্রাউজার অটোমেটিক ম্যানেজ করে।
"ম্যানুয়াল"
জুম পরিবর্তনের অটোমেটিক হ্যান্ডলিং ওভাররাইড করে। onZoomChange ইভেন্ট এখনও পাঠানো হবে এবং এই ইভেন্ট শোনা ও ম্যানুয়ালি পৃষ্ঠা স্কেল করার দায়িত্ব এক্সটেনশনের। এই মোডে per-origin জুম করার সুবিধা কাজ করে না, তাই scope জুম সেটিং উপেক্ষা করে per-tab ধরে নেওয়া হয়।
"disabled"
ট্যাবে সব ধরনের জুম করার সুবিধা বন্ধ করে দেয়। ট্যাবটি ডিফল্ট জুম লেভেলে ফিরে আসে এবং জুম পরিবর্তন করার সব প্রচেষ্টা উপেক্ষা করা হয়।
ZoomSettingsScope
পৃষ্ঠার উৎসের জন্য জুম পরিবর্তন বজায় থাকবে নাকি শুধুমাত্র এই ট্যাবে কার্যকর হবে তা নির্ধারণ করে; automatic মোডে থাকলে ডিফল্ট হিসেবে per-origin এবং অন্যথায় per-tab হয়।
Enum
"প্রতি-অরিজিন"
জুম করা পৃষ্ঠার অরিজিনে জুম সংক্রান্ত পরিবর্তন বজায় থাকে, অর্থাৎ, একই অরিজিনে নেভিগেট করা অন্যান্য সব ট্যাবও জুম করা হয়। এছাড়াও, per-origin জুম পরিবর্তনগুলি অরিজিনের সাথে সেভ করা হয়, যার অর্থ হল একই অরিজিনের অন্যান্য পৃষ্ঠায় নেভিগেট করার সময়, সেগুলি সব একই জুম ফ্যাক্টরে জুম করা হয়। per-origin স্কোপ শুধুমাত্র automatic মোডে উপলভ্য।
"ট্যাব-প্রতি"
জুমের পরিবর্তন শুধুমাত্র এই ট্যাবে কার্যকর হয় এবং অন্যান্য ট্যাবে জুমের পরিবর্তন এই ট্যাবের জুমিংকে প্রভাবিত করে না। এছাড়াও, per-tab নেভিগেশনে জুম পরিবর্তন রিসেট করা হয়; কোনও ট্যাবে নেভিগেট করলে সবসময় তার per-origin জুম ফ্যাক্টর সহ পৃষ্ঠা লোড হয়।
প্রপার্টি
MAX_CAPTURE_VISIBLE_TAB_CALLS_PER_SECOND
প্রতি সেকেন্ডে সর্বাধিক যতবার captureVisibleTab কল করা যেতে পারে। captureVisibleTab-এর দাম বেশি এবং এটি খুব ঘন ঘন কল করা উচিত নয়।
ভ্যালু
২
SPLIT_VIEW_ID_NONE
একটি আইডি যা স্প্লিট ট্যাবের অনুপস্থিতি দেখায়।
ভ্যালু
-১
TAB_ID_NONE
ব্রাউজার ট্যাব না থাকার বিষয়টি বোঝায় এমন আইডি।
ভ্যালু
-১
TAB_INDEX_NONE
একটি ইন্ডেক্স যা tab_strip-এ ট্যাব ইন্ডেক্সের অনুপস্থিতি দেখায়।
ভ্যালু
-১
পদ্ধতি
captureVisibleTab()
browser.tabs.captureVisibleTab(
windowId?: number,
options?: ImageDetails,
): Promise<string>
নির্দিষ্ট উইন্ডোতে বর্তমানে অ্যাক্টিভ ট্যাবের দৃশ্যমান অংশ ক্যাপচার করে। এই পদ্ধতি কল করার জন্য, এক্সটেনশনের কাছে হয় <all_urls> অনুমতি অথবা activeTab অনুমতি থাকতে হবে। এক্সটেনশন সাধারণত যেসব সাইট অ্যাক্সেস করতে পারে, তার পাশাপাশি এই পদ্ধতি এক্সটেনশনকে এমন সংবেদনশীল সাইট ক্যাপচার করার অনুমতি দেয় যা অন্যথায় সীমাবদ্ধ, এর মধ্যে chrome:-scheme পৃষ্ঠা, অন্যান্য এক্সটেনশনের পৃষ্ঠা এবং ডেটা: URL অন্তর্ভুক্ত। এইসব সংবেদনশীল সাইট শুধুমাত্র activeTab অনুমতির মাধ্যমে ক্যাপচার করা যেতে পারে। এক্সটেনশনকে ফাইল অ্যাক্সেস করার অনুমতি দেওয়া হলে তবেই ফাইল URL ক্যাপচার করা হতে পারে।
প্যারামিটারগুলি
-
windowId
নম্বর ঐচ্ছিক
টার্গেট উইন্ডো। ডিফল্ট হিসেবে বর্তমান উইন্ডো সেট করা থাকে।
-
বিকল্প
ImageDetails ঐচ্ছিক
রিটার্ন
-
Promise<string>
Chrome 88+ Chrome 148 থেকে browser.*
connect()
browser.tabs.connect(
tabId: number,
connectInfo?: object,
): runtime.Port
নির্দিষ্ট ট্যাবে কন্টেন্ট স্ক্রিপ্টের সাথে কানেক্ট করে। বর্তমান এক্সটেনশনের জন্য নির্দিষ্ট ট্যাবে রান করা প্রতিটি কন্টেন্ট স্ক্রিপ্টে runtime.onConnect ইভেন্ট ফায়ার করা হয়। আরও জানতে, কন্টেন্ট স্ক্রিপ্ট মেসেজিং দেখুন।
প্যারামিটারগুলি
-
tabId
নম্বর
-
connectInfo
অবজেক্ট ঐচ্ছিক
-
documentId
স্ট্রিং ঐচ্ছিক
Chrome 106+ Chrome 148 থেকে browser.*ট্যাবের সব ফ্রেমের পরিবর্তে
documentIdদ্বারা শনাক্ত করা নির্দিষ্ট ডকুমেন্ট-এ পোর্ট খুলুন। -
frameId
নম্বর ঐচ্ছিক
ট্যাবের সব ফ্রেমের পরিবর্তে
frameIdদ্বারা শনাক্ত করা নির্দিষ্ট ফ্রেম-এ পোর্ট খুলুন। -
নাম
স্ট্রিং ঐচ্ছিক
কন্টেন্ট স্ক্রিপ্টের জন্য onConnect-এ পাস করা হয় যা কানেকশন ইভেন্ট শুনছে।
-
রিটার্ন
-
নির্দিষ্ট ট্যাবে চলা কন্টেন্ট স্ক্রিপ্টের সাথে যোগাযোগ করার জন্য ব্যবহার করা যেতে পারে এমন একটি পোর্ট। ট্যাব বন্ধ হয়ে গেলে বা না থাকলে, পোর্টের
runtime.Portইভেন্ট ফায়ার করা হয়।
প্যারামিটারগুলি
-
createProperties
অবজেক্ট
-
অ্যাক্টিভ আছে
বুলিয়ান ঐচ্ছিক
ট্যাবটি উইন্ডোতে অ্যাক্টিভ ট্যাব হবে কিনা। উইন্ডো ফোকাস করা আছে কিনা তা প্রভাবিত করে না (
windows.updateদেখুন)। ডিফল্ট হিসেবেtrue-এ সেট করা থাকে। -
সূচি
নম্বর ঐচ্ছিক
উইন্ডোতে ট্যাবটি যে পজিশনে থাকবে। প্রদত্ত মানটি শূন্য এবং উইন্ডোতে থাকা ট্যাবের সংখ্যার মধ্যে সীমাবদ্ধ।
-
openerTabId
নম্বর ঐচ্ছিক
যে ট্যাব এই ট্যাবটি খুলেছে সেটির আইডি। উল্লেখ করা থাকলে, ওপেনার ট্যাবটি অবশ্যই নতুন তৈরি করা ট্যাবের মতো একই উইন্ডোতে থাকতে হবে।
-
পিন করা হয়েছে
বুলিয়ান ঐচ্ছিক
ট্যাবটি পিন করা উচিত কিনা। ডিফল্ট হিসেবে
falseসেট করা থাকে -
বেছে নেওয়া হয়েছে
বুলিয়ান ঐচ্ছিক
বন্ধ করে দেওয়া হয়েছেঅ্যাক্টিভ ব্যবহার করুন।
উইন্ডোতে ট্যাবটি বেছে নেওয়া ট্যাব হবে কিনা। ডিফল্ট হিসেবে
trueসেট করা থাকে -
splitWithTabId
নম্বর ঐচ্ছিক
Chrome 155+আগে থেকে থাকা কোনও ট্যাবের আইডি যার সাথে স্প্লিট ভিউ তৈরি করা হবে। উল্লেখ করা থাকলে, 'স্প্লিট-উইথ' ট্যাবকে নিম্নলিখিত শর্ত পূরণ করতে হবে:
- এটি আগে থেকে স্প্লিট করা ট্যাব হলে চলবে না।
- এটি অবশ্যই নতুন তৈরি করা ট্যাবের মতো একই উইন্ডোতে থাকতে হবে।
windowIdউল্লেখ করা থাকলে, এটি অবশ্যই স্প্লিট-উইথ ট্যাবের উইন্ডো আইডির মতো একই হতে হবে।indexনির্দিষ্ট করা থাকলে, এটি অবশ্যই স্প্লিট-উইথ ট্যাবের সংলগ্ন একটি ইন্ডেক্স হতে হবে এবং নতুন তৈরি করা ট্যাবের আপেক্ষিক পজিশনিংকে প্রভাবিত করবে।
-
URL
স্ট্রিং ঐচ্ছিক
ট্যাবটি প্রাথমিকভাবে নেভিগেট করার URL। সম্পূর্ণ-যোগ্য URL-এ অবশ্যই একটি স্কিম অন্তর্ভুক্ত থাকতে হবে (যেমন, 'http://www.google.com', 'www.google.com' নয়)। এক্সটেনশনের মধ্যে বর্তমান পৃষ্ঠার সাথে রিলেটিভ URL সম্পর্কিত। ডিফল্ট হিসেবে নতুন ট্যাব পৃষ্ঠা সেট করা থাকে।
-
windowId
নম্বর ঐচ্ছিক
যে উইন্ডোতে নতুন ট্যাব তৈরি করতে হবে। ডিফল্ট হিসেবে বর্তমান উইন্ডো সেট করা থাকে।
-
রিটার্ন
-
Promise<Tab>
Chrome 88+ Chrome 148 থেকে browser.*
createSplit()
browser.tabs.createSplit(
tabIds: [number, number],
): Promise<number>
আগে থেকে থাকা দুটি ট্যাবকে স্প্লিট ভিউতে ভাগ করে।
প্যারামিটারগুলি
-
tabIds
[number, number]
স্প্লিট ভিউতে পেয়ার করার জন্য ঠিক দুটি ট্যাব আইডির একটি অ্যারে। সব ট্যাবকে নিম্নলিখিত শর্ত পূরণ করতে হবে:
এগুলি অবশ্যই পাশাপাশি থাকতে হবে। সেগুলি আগে থেকে স্প্লিট ভিউতে থাকলে চলবে না। সেগুলির
windowId,pinnedওgroupIdস্ট্যাটাস ম্যাচ করতে হবে।
রিটার্ন
-
Promise<number>
detectLanguage()
browser.tabs.detectLanguage(
tabId?: number,
): Promise<string>
ট্যাবে কন্টেন্টের প্রাথমিক ভাষা শনাক্ত করে।
প্যারামিটারগুলি
-
tabId
নম্বর ঐচ্ছিক
ডিফল্ট হিসেবে বর্তমান উইন্ডো-এর অ্যাক্টিভ ট্যাবে সেট করা থাকে।
রিটার্ন
-
Promise<string>
Chrome 88+ Chrome 148 থেকে browser.*
discard()
browser.tabs.discard(
tabId?: number,
): Promise<Tab | undefined>
মেমরি থেকে ট্যাব বাতিল করে। বাতিল করা ট্যাবগুলি এখনও ট্যাব বারে দেখা যায় এবং অ্যাক্টিভেট করা হলে আবার লোড হয়।
প্যারামিটারগুলি
-
tabId
নম্বর ঐচ্ছিক
যে ট্যাবটি বাতিল করা হবে সেটির আইডি। উল্লেখ করা থাকলে, ট্যাবটি অ্যাক্টিভ না থাকলে বা আগে থেকেই বাতিল করা না হলে বাতিল করা হয়। বাদ দেওয়া হলে, ব্রাউজার সবচেয়ে কম গুরুত্বপূর্ণ ট্যাবটি বাতিল করে দেয়। বাতিল করার মতো কোনও ট্যাব না থাকলে এটি কাজ নাও করতে পারে।
রিটার্ন
-
<ট্যাব | অনির্দিষ্ট> প্রমিস
Chrome 88+ Chrome 148 থেকে browser.*অপারেশন সম্পূর্ণ হওয়ার পরে সমাধান করে।
প্যারামিটারগুলি
-
tabId
নম্বর
ডুপ্লিকেট করার জন্য ট্যাবের আইডি।
রিটার্ন
-
<ট্যাব | অনির্দিষ্ট> প্রমিস
Chrome 88+ Chrome 148 থেকে browser.*
প্যারামিটারগুলি
-
tabId
নম্বর
রিটার্ন
-
Promise<Tab>
Chrome 88+ Chrome 148 থেকে browser.*
getCurrent()
browser.tabs.getCurrent(): Promise<Tab | undefined>
এই স্ক্রিপ্ট কল যে ট্যাব থেকে করা হচ্ছে সেটি পায়। ট্যাব নয় এমন প্রসঙ্গ থেকে কল করা হলে undefined রিটার্ন করে (যেমন, ব্যাকগ্রাউন্ড পৃষ্ঠা বা পপ-আপ ভিউ)।
রিটার্ন
-
<ট্যাব | অনির্দিষ্ট> প্রমিস
Chrome 88+ Chrome 148 থেকে browser.*
getZoom()
browser.tabs.getZoom(
tabId?: number,
): Promise<number>
নির্দিষ্ট ট্যাবের বর্তমান জুম ফ্যাক্টর পায়।
প্যারামিটারগুলি
-
tabId
নম্বর ঐচ্ছিক
বর্তমান জুম ফ্যাক্টর পাওয়ার জন্য ট্যাবের আইডি; বর্তমান উইন্ডোর অ্যাক্টিভ ট্যাবে ডিফল্ট হিসেবে সেট করা থাকে।
রিটার্ন
-
Promise<number>
Chrome 88+ Chrome 148 থেকে browser.*ট্যাবের বর্তমান জুম ফ্যাক্টর ফেচ করার পরে এটি সমাধান করে।
getZoomSettings()
browser.tabs.getZoomSettings(
tabId?: number,
): Promise<ZoomSettings>
নির্দিষ্ট ট্যাবের বর্তমান জুম সেটিংস দেখায়।
প্যারামিটারগুলি
-
tabId
নম্বর ঐচ্ছিক
বর্তমান জুম সেটিংস পেতে ট্যাবের আইডি; বর্তমান উইন্ডোর অ্যাক্টিভ ট্যাবে ডিফল্ট হিসেবে সেট করা থাকে।
রিটার্ন
-
Promise<ZoomSettings>
Chrome 88+ Chrome 148 থেকে browser.*ট্যাবের বর্তমান জুম সেটিংসের সাথে সমাধান করে।
goBack()
browser.tabs.goBack(
tabId?: number,
): Promise<void>
আগের পৃষ্ঠা উপলভ্য থাকলে, সেখানে ফিরে যান।
প্যারামিটারগুলি
-
tabId
নম্বর ঐচ্ছিক
ফিরে যাওয়ার জন্য ট্যাবের আইডি; ডিফল্ট হিসেবে বর্তমান উইন্ডোর বেছে নেওয়া ট্যাবে ফিরে যায়।
রিটার্ন
-
<void> প্রমিস
Chrome 88+ Chrome 148 থেকে browser.*
goForward()
browser.tabs.goForward(
tabId?: number,
): Promise<void>
পরবর্তী পৃষ্ঠা উপলভ্য থাকলে, সেখানে যান।
প্যারামিটারগুলি
-
tabId
নম্বর ঐচ্ছিক
সামনে নেভিগেট করার জন্য ট্যাবের আইডি; বর্তমান উইন্ডোর বেছে নেওয়া ট্যাবে ডিফল্ট হিসেবে সেট করা থাকে।
রিটার্ন
-
<void> প্রমিস
Chrome 88+ Chrome 148 থেকে browser.*
group()
browser.tabs.group(
options: object,
): Promise<number>
নির্দিষ্ট গ্রুপে এক বা একাধিক ট্যাব যোগ করে অথবা কোনও গ্রুপ নির্দিষ্ট করা না থাকলে, নতুন তৈরি করা গ্রুপে প্রদত্ত ট্যাব যোগ করে।
প্যারামিটারগুলি
-
বিকল্প
অবজেক্ট
-
createProperties
অবজেক্ট ঐচ্ছিক
গ্রুপ তৈরি করার জন্য কনফিগারেশন। groupId আগে থেকেই উল্লেখ করা থাকলে ব্যবহার করা যাবে না।
-
windowId
নম্বর ঐচ্ছিক
নতুন গ্রুপের উইন্ডো। ডিফল্ট হিসেবে বর্তমান উইন্ডো সেট করা থাকে।
-
-
groupId
নম্বর ঐচ্ছিক
যে গ্রুপে ট্যাব যোগ করতে হবে সেটির আইডি। উল্লেখ না করা থাকলে, নতুন গ্রুপ তৈরি করা হবে।
-
tabIds
number | [number, ...number[]]
নির্দিষ্ট গ্রুপে যোগ করার জন্য ট্যাব আইডি বা ট্যাব আইডির তালিকা।
-
রিটার্ন
-
Promise<number>
highlight()
browser.tabs.highlight(
highlightInfo: object,
): Promise<windows.Window>
প্রদত্ত ট্যাব হাইলাইট করে এবং গ্রুপের প্রথম ট্যাবে ফোকাস করে। নির্দিষ্ট করা ট্যাব বর্তমানে অ্যাক্টিভ থাকলে, কিছু করা হবে না।
প্যারামিটারগুলি
-
highlightInfo
অবজেক্ট
-
ট্যাব
number | number[]
হাইলাইট করার জন্য এক বা একাধিক ট্যাব ইন্ডেক্স।
-
windowId
নম্বর ঐচ্ছিক
যে উইন্ডোতে ট্যাবগুলি রয়েছে।
-
রিটার্ন
-
Promise<windows.Window>
Chrome 88+ Chrome 148 থেকে browser.*
move()
browser.tabs.move(
tabIds: number | number[],
moveProperties: object,
): Promise<Tab | Tab[]>
এক বা একাধিক ট্যাবকে তার উইন্ডোর মধ্যে নতুন পজিশনে বা নতুন উইন্ডোতে সরায়। মনে রাখবেন, ট্যাব শুধুমাত্র সাধারণ (window.type === "normal") উইন্ডোতে এবং সেখান থেকে সরানো যেতে পারে।
প্যারামিটারগুলি
-
tabIds
number | number[]
ট্যাব আইডি বা সরানোর জন্য ট্যাব আইডির তালিকা।
-
moveProperties
অবজেক্ট
-
সূচি
নম্বর
উইন্ডোটি যে পজিশনে সরাতে হবে। উইন্ডোর শেষে ট্যাবটি রাখতে
-1ব্যবহার করুন। -
windowId
নম্বর ঐচ্ছিক
ট্যাবটি বর্তমানে যে উইন্ডোতে আছে সেটি ডিফল্ট হিসেবে সেট করা হয়।
-
query()
browser.tabs.query(
queryInfo: object,
): Promise<Tab[]>
নির্দিষ্ট প্রপার্টি সহ সব ট্যাব বা কোনও প্রপার্টি নির্দিষ্ট করা না থাকলে সব ট্যাব দেখায়।
প্যারামিটারগুলি
-
queryInfo
অবজেক্ট
-
অ্যাক্টিভ আছে
বুলিয়ান ঐচ্ছিক
ট্যাবগুলি তাদের উইন্ডোতে অ্যাক্টিভ আছে কিনা।
-
audible
বুলিয়ান ঐচ্ছিক
Chrome 45+ ব্রাউজার।* Chrome 148 থেকেট্যাবগুলি শোনা যাচ্ছে কিনা।
-
autoDiscardable
বুলিয়ান ঐচ্ছিক
Chrome 54+ Chrome 148 থেকে browser.*রিসোর্স কম থাকলে, ব্রাউজার অটোমেটিক ট্যাব বাতিল করতে পারবে কিনা।
-
currentWindow
বুলিয়ান ঐচ্ছিক
ট্যাবগুলি বর্তমান উইন্ডোতে আছে কিনা।
-
বাতিল করা হয়েছে
বুলিয়ান ঐচ্ছিক
Chrome 54+ Chrome 148 থেকে browser.*ট্যাবগুলি বাতিল করা হয়েছে কিনা। বাতিল করা ট্যাব হল এমন একটি ট্যাব যার কন্টেন্ট মেমরি থেকে আনলোড করা হয়েছে, কিন্তু এখনও ট্যাব বারে দেখা যাচ্ছে। পরের বার এটি অ্যাক্টিভেট করা হলে, এর কন্টেন্ট আবার লোড করা হয়।
-
ফ্রিজ হয়ে গেছে
বুলিয়ান ঐচ্ছিক
Chrome 132+ Chrome 148 থেকে browser.*ট্যাব ফ্রিজ হয়ে গেছে কিনা। ফ্রিজ করা ট্যাব ইভেন্ট হ্যান্ডলার বা টাইমার সহ কোনও টাস্ক এক্সিকিউট করতে পারে না। এটি ট্যাব বারে দেখা যায় এবং এর কন্টেন্ট মেমরিতে লোড করা হয়। অ্যাক্টিভেট করার পরে এটি আনফ্রোজেন হয়ে যায়।
-
groupId
নম্বর ঐচ্ছিক
Chrome 88+ Chrome 148 থেকে browser.*ট্যাবগুলি যে গ্রুপে আছে তার আইডি, অথবা গ্রুপ করা হয়নি এমন ট্যাবের জন্য
tabGroups.TAB_GROUP_ID_NONE। -
হাইলাইট করা হয়েছে
বুলিয়ান ঐচ্ছিক
ট্যাব হাইলাইট করা হয়েছে কিনা।
-
সূচি
নম্বর ঐচ্ছিক
উইন্ডোর মধ্যে ট্যাবের পজিশন।
-
lastFocusedWindow
বুলিয়ান ঐচ্ছিক
ট্যাবগুলি শেষবার ফোকাস করা উইন্ডোতে আছে কিনা।
-
মিউট করা হয়েছে
বুলিয়ান ঐচ্ছিক
Chrome 45+ ব্রাউজার।* Chrome 148 থেকেট্যাবগুলি মিউট করা আছে কিনা।
-
পিন করা হয়েছে
বুলিয়ান ঐচ্ছিক
ট্যাবগুলি পিন করা আছে কিনা।
-
splitViewId
নম্বর ঐচ্ছিক
Chrome 140+ Chrome 148 থেকে browser.*ট্যাবগুলি যে স্প্লিট ভিউতে আছে তার আইডি, অথবা স্প্লিট ভিউতে নেই এমন ট্যাবের জন্য
tabs.SPLIT_VIEW_ID_NONE। -
স্ট্যাটাস
TabStatus ঐচ্ছিক
ট্যাব লোড হওয়ার স্ট্যাটাস।
-
শীর্ষক
স্ট্রিং ঐচ্ছিক
কোনও প্যাটার্নের সাথে পৃষ্ঠার শীর্ষক ম্যাচ করুন। এক্সটেনশনের কাছে
"tabs"অনুমতি বা পৃষ্ঠার জন্য হোস্ট অনুমতি না থাকলে এই প্রপার্টি উপেক্ষা করা হয়। -
URL
স্ট্রিং | স্ট্রিং[] ঐচ্ছিক
এক বা একাধিক URL প্যাটার্নের সাথে ট্যাব ম্যাচ করুন। ফ্র্যাগমেন্ট শনাক্তকারী মেলেনি। এক্সটেনশনের কাছে
"tabs"অনুমতি বা পৃষ্ঠার জন্য হোস্ট অনুমতি না থাকলে এই প্রপার্টি উপেক্ষা করা হয়। -
windowId
নম্বর ঐচ্ছিক
প্যারেন্ট উইন্ডোর আইডি অথবা বর্তমান উইন্ডোর জন্য
windows.WINDOW_ID_CURRENT। -
windowType
WindowType ঐচ্ছিক
ট্যাবগুলি যে ধরনের উইন্ডোতে আছে।
-
রিটার্ন
-
Promise<Tab[]>
Chrome 88+ Chrome 148 থেকে browser.*
reload()
browser.tabs.reload(
tabId?: number,
reloadProperties?: object,
): Promise<void>
ট্যাব আবার লোড করুন।
প্যারামিটারগুলি
-
tabId
নম্বর ঐচ্ছিক
রিলোড করার জন্য ট্যাবের আইডি; ডিফল্ট হিসেবে বর্তমান উইন্ডোর বেছে নেওয়া ট্যাব।
-
reloadProperties
অবজেক্ট ঐচ্ছিক
-
bypassCache
বুলিয়ান ঐচ্ছিক
লোকাল ক্যাশিং বাইপাস করা হবে কিনা। ডিফল্ট হিসেবে
falseসেট করা থাকে।
-
রিটার্ন
-
<void> প্রমিস
Chrome 88+ Chrome 148 থেকে browser.*
remove()
browser.tabs.remove(
tabIds: number | number[],
): Promise<void>
এক বা একাধিক ট্যাব বন্ধ করে।
প্যারামিটারগুলি
-
tabIds
number | number[]
ট্যাব আইডি বা বন্ধ করার জন্য ট্যাব আইডির তালিকা।
রিটার্ন
-
<void> প্রমিস
Chrome 88+ Chrome 148 থেকে browser.*
sendMessage()
browser.tabs.sendMessage(
tabId: number,
message: any,
options?: object,
): Promise<any>
নির্দিষ্ট ট্যাবে কন্টেন্ট স্ক্রিপ্টে একটি মেসেজ পাঠায়। বর্তমান এক্সটেনশনের জন্য নির্দিষ্ট ট্যাবে রান করা প্রতিটি কন্টেন্ট স্ক্রিপ্টে runtime.onMessage ইভেন্ট ফায়ার করা হয়।
প্যারামিটারগুলি
-
tabId
নম্বর
-
মেসেজ
যেকোনও
যে মেসেজ পাঠাতে হবে। এই মেসেজটি JSON-ifiable অবজেক্ট হতে হবে।
-
বিকল্প
অবজেক্ট ঐচ্ছিক
রিটার্ন
-
<any> প্রমিস
Chrome 99+ Chrome 148 থেকে browser.*কন্টেন্ট স্ক্রিপ্ট থেকে পাওয়া উত্তরের মাধ্যমে সমাধান করে এমন প্রমিস। নির্দিষ্ট ট্যাবে কানেক্ট করার সময় কোনও সমস্যা হলে, প্রমিস বাতিল করা হবে।
setZoom()
browser.tabs.setZoom(
tabId?: number,
zoomFactor: number,
): Promise<void>
নির্দিষ্ট ট্যাব জুম করে।
প্যারামিটারগুলি
-
tabId
নম্বর ঐচ্ছিক
জুম করার জন্য ট্যাবের আইডি; ডিফল্ট হিসেবে বর্তমান উইন্ডোর অ্যাক্টিভ ট্যাবে সেট করা থাকে।
-
zoomFactor
নম্বর
নতুন জুম ফ্যাক্টর।
0ভ্যালু সেট করলে ট্যাবটি তার বর্তমান ডিফল্ট জুম ফ্যাক্টরে সেট হয়ে যায়।0-এর থেকে বেশি ভ্যালু ট্যাবের জন্য একটি (সম্ভবত ডিফল্ট নয়) জুম ফ্যাক্টর নির্দিষ্ট করে।
রিটার্ন
-
<void> প্রমিস
Chrome 88+ Chrome 148 থেকে browser.*জুম ফ্যাক্টর পরিবর্তন করার পরে সমাধান করে।
setZoomSettings()
browser.tabs.setZoomSettings(
tabId?: number,
zoomSettings: ZoomSettings,
): Promise<void>
নির্দিষ্ট ট্যাবের জন্য জুম সেটিংস সেট করে, যা জুম পরিবর্তন কীভাবে ম্যানেজ করা হয় তা নির্ধারণ করে। ট্যাবে নেভিগেট করার সময় এই সেটিংস ডিফল্টে রিসেট হয়ে যায়।
প্যারামিটারগুলি
-
tabId
নম্বর ঐচ্ছিক
জুম সেটিংস পরিবর্তন করার জন্য ট্যাবের আইডি; বর্তমান উইন্ডোর অ্যাক্টিভ ট্যাবে ডিফল্ট হিসেবে সেট করা থাকে।
-
zoomSettings
জুম পরিবর্তন কীভাবে এবং কোন স্কোপে ম্যানেজ করা হয় তা নির্ধারণ করে।
রিটার্ন
-
<void> প্রমিস
Chrome 88+ Chrome 148 থেকে browser.*জুম সেটিংস পরিবর্তন করার পরে সমাধান হয়ে যায়।
ungroup()
browser.tabs.ungroup(
tabIds: number | [number, ...number[]],
): Promise<void>
এক বা একাধিক ট্যাবকে তাদের সংশ্লিষ্ট গ্রুপ থেকে সরিয়ে দেয়। কোনও গ্রুপ খালি হয়ে গেলে, সেটি মুছে ফেলা হয়।
প্যারামিটারগুলি
-
tabIds
number | [number, ...number[]]
ট্যাব আইডি বা ট্যাব আইডির তালিকা যা সংশ্লিষ্ট গ্রুপ থেকে সরাতে হবে।
রিটার্ন
-
<void> প্রমিস
unsplit()
browser.tabs.unsplit(
splitViewId: number,
): Promise<void>
'স্প্লিট ভিউ'-তে ট্যাবগুলিকে স্বাধীন ট্যাবে আলাদা করে।
প্যারামিটারগুলি
-
splitViewId
নম্বর
আলাদা করার জন্য স্প্লিট ভিউয়ের আইডি।
রিটার্ন
-
<void> প্রমিস
update()
browser.tabs.update(
tabId?: number,
updateProperties: object,
): Promise<Tab | undefined>
ট্যাবের প্রপার্টি পরিবর্তন করে। updateProperties-এ উল্লেখ করা নেই এমন প্রপার্টি পরিবর্তন করা হয় না।
প্যারামিটারগুলি
-
tabId
নম্বর ঐচ্ছিক
ডিফল্ট হিসেবে বর্তমান উইন্ডো-এর বেছে নেওয়া ট্যাবে সেট করা থাকে।
-
updateProperties
অবজেক্ট
-
অ্যাক্টিভ আছে
বুলিয়ান ঐচ্ছিক
ট্যাবটি অ্যাক্টিভ থাকা উচিত কিনা। উইন্ডো ফোকাস করা আছে কিনা তা প্রভাবিত করে না (
windows.updateদেখুন)। -
autoDiscardable
বুলিয়ান ঐচ্ছিক
Chrome 54+ Chrome 148 থেকে browser.*রিসোর্স কম থাকলে, ব্রাউজার অটোমেটিক ট্যাবটি বাতিল করবে কিনা।
-
হাইলাইট করা হয়েছে
বুলিয়ান ঐচ্ছিক
বর্তমানে বেছে নেওয়া বিকল্প থেকে ট্যাব যোগ করে বা সরিয়ে দেয়।
-
মিউট করা হয়েছে
বুলিয়ান ঐচ্ছিক
Chrome 45+ ব্রাউজার।* Chrome 148 থেকেট্যাবটি মিউট করা উচিত কিনা।
-
openerTabId
নম্বর ঐচ্ছিক
যে ট্যাব এই ট্যাবটি খুলেছে সেটির আইডি। নির্দিষ্ট করা থাকলে, ওপেনার ট্যাবটি অবশ্যই এই ট্যাবের মতো একই উইন্ডোতে থাকতে হবে।
-
পিন করা হয়েছে
বুলিয়ান ঐচ্ছিক
ট্যাবটি পিন করা উচিত কিনা।
-
বেছে নেওয়া হয়েছে
বুলিয়ান ঐচ্ছিক
বন্ধ করে দেওয়া হয়েছেহাইলাইট করা ব্যবহার করুন।
ট্যাবটি বেছে নেওয়া উচিত কিনা।
-
URL
স্ট্রিং ঐচ্ছিক
ট্যাবে নেভিগেট করার জন্য একটি URL। জাভাস্ক্রিপ্ট URL কাজ করে না; পরিবর্তে
scripting.executeScriptব্যবহার করুন।
-
রিটার্ন
-
<ট্যাব | অনির্দিষ্ট> প্রমিস
Chrome 88+ Chrome 148 থেকে browser.*
ইভেন্ট
onActivated
browser.tabs.onActivated.addListener(
callback: function,
)
উইন্ডোতে অ্যাক্টিভ ট্যাব পরিবর্তন হলে ফায়ার করে। মনে রাখবেন যে এই ইভেন্টটি ট্রিগার করার সময় ট্যাবের URL সেট নাও হতে পারে, তবে আপনি onUpdated ইভেন্টগুলি শুনতে পারেন যাতে কোনও URL সেট করা হলে বিজ্ঞপ্তি পেতে পারেন।
প্যারামিটারগুলি
-
কলব্যাক
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(activeInfo: object) => void
-
activeInfo
অবজেক্ট
-
tabId
নম্বর
অ্যাক্টিভ হয়ে যাওয়া ট্যাবের আইডি।
-
windowId
নম্বর
অ্যাক্টিভ ট্যাব যে উইন্ডোর মধ্যে পরিবর্তন করা হয়েছে সেটির আইডি।
-
-
onAttached
browser.tabs.onAttached.addListener(
callback: function,
)
কোনও উইন্ডোতে ট্যাব অ্যাটাচ করা হলে ফায়ার করা হয়; যেমন, উইন্ডোর মধ্যে এটি সরানো হয়েছে বলে।
প্যারামিটারগুলি
-
কলব্যাক
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(tabId: number, attachInfo: object) => void
-
tabId
নম্বর
-
attachInfo
অবজেক্ট
-
newPosition
নম্বর
-
newWindowId
নম্বর
-
-
onCreated
browser.tabs.onCreated.addListener(
callback: function,
)
ট্যাব তৈরি করা হলে ফায়ার করা হয়। মনে রাখবেন, এই ইভেন্টটি ফায়ার করার সময় ট্যাবের URL এবং ট্যাব গ্রুপের মেম্বারশিপ সেট নাও করা হতে পারে, তবে আপনি onUpdated ইভেন্ট শুনতে পারেন যাতে কোনও URL সেট করা হলে বা ট্যাবটি কোনও ট্যাব গ্রুপে যোগ করা হলে বিজ্ঞপ্তি পেতে পারেন।
onDetached
browser.tabs.onDetached.addListener(
callback: function,
)
কোনও উইন্ডো থেকে ট্যাব সরিয়ে দেওয়া হলে ফায়ার করা হয়; যেমন, উইন্ডোর মধ্যে এটি সরানো হয়েছে বলে।
প্যারামিটারগুলি
-
কলব্যাক
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(tabId: number, detachInfo: object) => void
-
tabId
নম্বর
-
detachInfo
অবজেক্ট
-
oldPosition
নম্বর
-
oldWindowId
নম্বর
-
-
onHighlighted
browser.tabs.onHighlighted.addListener(
callback: function,
)
উইন্ডোতে হাইলাইট করা বা বেছে নেওয়া ট্যাব পরিবর্তন হলে ফায়ার করা হয়।
প্যারামিটারগুলি
-
কলব্যাক
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(highlightInfo: object) => void
-
highlightInfo
অবজেক্ট
-
tabIds
সংখ্যা[]
উইন্ডোতে হাইলাইট করা সব ট্যাব।
-
windowId
নম্বর
যে উইন্ডোর ট্যাব পরিবর্তন করা হয়েছে।
-
-
onMoved
browser.tabs.onMoved.addListener(
callback: function,
)
কোনও উইন্ডোর মধ্যে ট্যাব সরানো হলে ফায়ার করা হয়। শুধুমাত্র একটি সরানোর ইভেন্ট ফায়ার করা হয়, যা ব্যবহারকারী সরাসরি যে ট্যাবে গেছেন সেটি দেখায়। ম্যানুয়ালি সরানো ট্যাবের সাথে সাথে অন্যান্য যেসব ট্যাব সরানো হয়, সেগুলির ক্ষেত্রে সরানোর ইভেন্ট ফায়ার করা হয় না। উইন্ডোর মধ্যে ট্যাব সরানো হলে এই ইভেন্ট ট্রিগার করা হয় না; আরও জানতে, tabs.onDetached দেখুন।
প্যারামিটারগুলি
-
কলব্যাক
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(tabId: number, moveInfo: object) => void
-
tabId
নম্বর
-
moveInfo
অবজেক্ট
-
fromIndex
নম্বর
-
toIndex
নম্বর
-
windowId
নম্বর
-
-
onRemoved
browser.tabs.onRemoved.addListener(
callback: function,
)
ট্যাব বন্ধ করা হলে ফায়ার করা হয়।
প্যারামিটারগুলি
-
কলব্যাক
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(tabId: number, removeInfo: object) => void
-
tabId
নম্বর
-
removeInfo
অবজেক্ট
-
isWindowClosing
বুলিয়ান
ট্যাব বন্ধ হয়ে গেলে ট্রু হিসেবে বিবেচিত হয় কারণ এর পেরেন্ট উইন্ডো বন্ধ হয়ে গেছে।
-
windowId
নম্বর
যে উইন্ডোর ট্যাব বন্ধ করা হয়েছে।
-
-
onReplaced
browser.tabs.onReplaced.addListener(
callback: function,
)
প্রিরেন্ডারিং বা ইনস্ট্যান্টের কারণে একটি ট্যাব অন্য ট্যাব দিয়ে পরিবর্তন করা হলে ফায়ার করা হয়।
প্যারামিটারগুলি
-
কলব্যাক
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(addedTabId: number, removedTabId: number) => void
-
addedTabId
নম্বর
-
removedTabId
নম্বর
-
onUpdated
browser.tabs.onUpdated.addListener(
callback: function,
)
ট্যাব আপডেট করা হলে ফায়ার করা হয়।
প্যারামিটারগুলি
-
কলব্যাক
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(tabId: number, changeInfo: object, tab: Tab) => void
-
tabId
নম্বর
-
changeInfo
অবজেক্ট
-
audible
বুলিয়ান ঐচ্ছিক
Chrome 45+ ব্রাউজার।* Chrome 148 থেকেট্যাবের নতুন অডিবল স্ট্যাটাস।
-
autoDiscardable
বুলিয়ান ঐচ্ছিক
Chrome 54+ Chrome 148 থেকে browser.*ট্যাবের নতুন অটো-ডিসকার্ডেবল স্ট্যাটাস।
-
বাতিল করা হয়েছে
বুলিয়ান ঐচ্ছিক
Chrome 54+ Chrome 148 থেকে browser.*ট্যাবের নতুন বাতিল করা স্ট্যাটাস।
-
favIconUrl
স্ট্রিং ঐচ্ছিক
ট্যাবের নতুন ফেভিকন URL।
-
ফ্রিজ হয়ে গেছে
বুলিয়ান ঐচ্ছিক
Chrome 132+ Chrome 148 থেকে browser.*ট্যাবের নতুন ফ্রোজেন স্ট্যাটাস।
-
groupId
নম্বর ঐচ্ছিক
Chrome 88+ Chrome 148 থেকে browser.*ট্যাবের নতুন গ্রুপ।
-
mutedInfo
MutedInfo ঐচ্ছিক
Chrome 46+ Chrome 148 থেকে browser.*ট্যাবের নতুন মিউট করা স্ট্যাটাস এবং পরিবর্তনের কারণ।
-
পিন করা হয়েছে
বুলিয়ান ঐচ্ছিক
ট্যাবের নতুন পিন করা স্ট্যাটাস।
-
splitViewId
নম্বর ঐচ্ছিক
Chrome 140+ Chrome 148 থেকে browser.*ট্যাবের নতুন স্প্লিট ভিউ।
-
স্ট্যাটাস
TabStatus ঐচ্ছিক
ট্যাবের লোডিং স্ট্যাটাস।
-
শীর্ষক
স্ট্রিং ঐচ্ছিক
Chrome 48+ Chrome 148 থেকে browser.*ট্যাবের নতুন শীর্ষক।
-
URL
স্ট্রিং ঐচ্ছিক
ট্যাবের URL পরিবর্তন হয়ে থাকলে।
-
-
ট্যাব
-
onZoomChange
browser.tabs.onZoomChange.addListener(
callback: function,
)
ট্যাব জুম করা হলে ফায়ার করা হয়।
প্যারামিটারগুলি
-
কলব্যাক
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(ZoomChangeInfo: object) => void
-
ZoomChangeInfo
অবজেক্ট
-
newZoomFactor
নম্বর
-
oldZoomFactor
নম্বর
-
tabId
নম্বর
-
zoomSettings
-
-