1

Тема: Розширення для Google Chrome

Хаі. От захотілось написати собі декілька розширень, котрі б автоматизували деяку роботу під час блукання в інтернетах. Відразу пішов в гугль та знайшов декілька статей на хабрі, але там або якось дивно викладенний матеріал, або немає тої інформації, котру я шукаю. Завдання поки що таке - треба отримати доступ до вкладок. Наприклад, я натискаю кнопку, і фон сторінки змінюється. Я нагуглив функцію

chrome.tabs.getCurrent()

але там написано, що воно повертає

undefined

якщо викликається зі скрипта, котрий знаходится на popup-сторінці

Gets the tab that this script call is being made from. May be undefined if called from a non-tab context (for example: a background page or popup view).

тобто та сторінці, котра з'являється, коли ви натискаєте на значок розширення
http://не-дійсний-домен/6LYqt.png
Але я щось не розумію, як же тоді отримати доступ до вкладок та контенту, котрий в цих вкладках знаходится? Де ж має знаходитись скрипт, котрий це все має робити, та як його викликати по натисненню кнопки на popup-сторінці?

2

Re: Розширення для Google Chrome

флуд, який справи не стосується

"кніпка" - Азаров є в кожному з нас

Подякували: koala1

3

Re: Розширення для Google Chrome

Прихований текст

Азіров.

Подякували: koala1

4

Re: Розширення для Google Chrome

Слід використовувати chrome.tabs.query
https://stackoverflow.com/questions/461 … etselected

5

Re: Розширення для Google Chrome

Прихований текст

Але це стиль такий. Так зо не треба припиняти.

6

Re: Розширення для Google Chrome

Ну я вже втомився.... і так пробую, і так, а воно ніяк не працює!

var btn = document.getElementById("btn");
var win = chrome.windows.WINDOW_ID_CURRENT;

var func = function(){

chrome.tabs.query({active:true,windowID:win},function(tabs){alert("sf");});
    
};

btn.addEventListener("click",func,true);

7

Re: Розширення для Google Chrome

http://www.ibm.com/developerworks/opens … index.html

8

Re: Розширення для Google Chrome

да в тих прикладах щось своє, зовсім інше, там немає навіть простого прикладу, як дізнатись кількість закладок у вікні. От з вікнами все гаразд, я можу отримати кількість вікон, та майже всі дані по кожному вікну, але от закладки у вікні я ніяк отримати не можу, хоча тут все прозоро та логічно, і має працювати

var btn = document.getElementById("btn");
var win;
var tab1;

var func = function(){

chrome.windows.getAll(null,
                      function(windows){win=windows[0];}); //отримую перше вікно браузера
    win.tabs.query(null,function(tabs){tab1=tabs;}); //а ось тут я мав би отримати масив закладок цього віконця
    alert(tab1.length); //це вже не спрацьовує, тому що не виконується строка вище
};

btn.addEventListener("click",func,true);

9

Re: Розширення для Google Chrome

p.s. під словом "закладки", я маю на увазі ось ці штуки
http://не-дійсний-домен/6MAtU.png
надалі буду їх звати вірно - "вкладки"

10

Re: Розширення для Google Chrome

FakiNyan написав:

надалі буду їх звати вірно - "вкладки"

скоро ми навчимо вас правильно розмовляти ;)

11

Re: Розширення для Google Chrome

Cyan написав:
FakiNyan написав:

надалі буду їх звати вірно - "вкладки"

скоро ми навчимо вас правильно розмовляти ;)

Прихований текст

ДІЗЛАЙК!!1