teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

文の変更

2017/02/17 14:50

投稿

nekojiro
nekojiro

スコア43

title CHANGED
File without changes
body CHANGED
@@ -1,7 +1,6 @@
1
1
  ###前提・実現したいこと
2
- firefoxのアドオンをwebextensionsで作っています。browser.storage.local.set()で保存した複数のurlと比較して一致したタブにtabs.executeScript()でjsファイルを挿入したい。あとbackgrond.jsのコンソールを見る方法はありますか?
2
+ firefoxのアドオンをwebextensionsで作っています。browser.storage.local.set()で保存した複数のurlと比較して一致したタブにtabs.executeScript()でjsファイルを挿入したい。
3
- `if (tab.status === 'complete'){}``tab.status`が[MDN
3
+ script.jsのconsole.log()のところにtabs.executeScript()を入れたい。
4
- ](https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/tabs)に書いてないのに動く理由も知りたい
5
4
 
6
5
  ###発生している問題・エラーメッセージ
7
6
 
@@ -11,6 +10,10 @@
11
10
 
12
11
  **manifest.json**
13
12
  ```
13
+ "content_scripts": [{
14
+ "matches": ["<all_urls>"],
15
+ "js": ["script.js"]
16
+ }],
14
17
  "background": {
15
18
  "scripts": ["background.js"]
16
19
  },
@@ -19,25 +22,25 @@
19
22
  "activeTab",
20
23
  ]
21
24
  ```
22
- **background.js**
25
+ **script.js**
23
26
  ```javascript
24
- `function urlcheck(item) {
27
+ function urlcheck(item) {
25
28
  const urlkey2 = Object.values(item);
26
29
  for (const variable of urlkey2) {
27
30
  const href = window.location.href;
28
31
  if (variable === href) {
29
- browser.tabs.executeScript({
30
- file: 'page-eater.js',
32
+ var plus = 0;
31
- });
33
+ plus++;
32
34
  }
33
35
  }
36
+ if (plus === 1) {
37
+ console.log('yes');
38
+ }
34
39
  }
35
- browser.tabs.onUpdated.addListener(function(tabId, changeInfo, tab) {
40
+
36
- if (tab.status === 'complete') {
37
- const gettingItem = browser.storage.local.get();
41
+ const gettingItem = browser.storage.local.get();
38
- gettingItem.then(urlcheck, onError);
42
+ gettingItem.then(urlcheck);
39
- }
43
+
40
- });
41
44
  ```
42
45
 
43
46
  ###試したこと