๐Ÿ’ป ๊ฐœ๋ฐœ ์ผ์ง€/FrontEnd

[ ๋ฌธ์ œ ] ํƒ€์ด๋จธ๋ฅผ ์ ์šฉํ•˜๋Š” setInterval์ด ๊ฐ„ํ—์ ์œผ๋กœ ์‹คํ–‰๋˜์ง€ ์•Š์Œ ์ƒˆ๋กœ์šด window๋ฅผ ์—ด์—ˆ์„ ๋•Œ, background.js๊ฐ€ ์žฌ ์‹คํ–‰๋˜๋ฉด์„œ, tabId๊ฐ€ “”๋กœ ์ดˆ๊ธฐํ™” ๋จ setInterval Manifest V3๋กœ ์ด์ „ ๋˜๋ฉด์„œ, chrome alarms API๋กœ ๋ณ€๊ฒฝ https://developer.chrome.com/docs/extensions/mv3/migrating_to_service_workers/#alarms chrome.alarms.create({ when:Date.now(), periodInMinutes: 1/60}); chrome.alarms.onAlarm.addListener(() => { // Do Action }); alarms ์‚ฌ์šฉ์„ ์œ„ํ•ด, Manifest์— Perm..
[ localStorage์—์„œ ๋ฐ์ดํ„ฐ ์–ป๊ธฐ ] ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ด๋ฏธ ์›น ํŽ˜์ด์ง€์—์„œ localStorage์— ์ €์žฅํ•˜๊ณ  ์žˆ์—ˆ์Œ! → localStorage ๋‚ด์šฉ ์–ป์–ด์˜ค๊ธฐ 1. ๋ฐ์ดํ„ฐ ๊ฐ€์ ธ์˜ฌ Tab์˜ ID ์–ป๊ธฐ chrome.tabs.onUpdated.addListener((tabId, changeInfo, tab)=>{ if(changeInfo.status === 'complete'){ if(tab.url.includes("URL์ฃผ์†Œ"){ globalTabId = tabId; } } }); ์‚ฌ์šฉ์ž๊ฐ€ ๋ฏธ๋ฆฌ ์ง€์ •๋œ URL์— ์ ‘์†ํ•  ๊ฒฝ์šฐ, ํ•ด๋‹น ํƒญ์˜ ID๋ฅผ ์ €์žฅ ํ•ด๋‹น ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ํƒญ์˜ ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ „์—ญ๋ณ€์ˆ˜๋กœ ์ €์žฅ ํ›„ ํ™œ์šฉ 2. localStorage ๊ฐ€์ ธ์˜ฌ Script ์ฃผ์ž… chrome.scrip..
[ manifest.json ] ์‚ฌ์šฉ์ž์˜ Tab ์ •๋ณด๋ฅผ ํ™œ์šฉํ•˜์—ฌ ํ™”๋ฉด์„ ์ œ์–ดํ•˜๊ธฐ ๋•Œ๋ฌธ์—, permissions์„ ์ถ”๊ฐ€ /* manifest.json */ ... "permissions": [ "...", "tabs", "scripting" ], "host_permissions":[ /* ํŠน์ • URL์— script ์ฃผ์ž…์„ ์œ„ํ•œ ๊ถŒํ•œ */ "http://*/", "https://*/" ], ... [ Background JS ] ๋‹ค์–‘ํ•œ ๋ธŒ๋ผ์šฐ์ € event๋“ค์„ monitoringํ•˜์—ฌ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•œ๋‹ค ํƒญ URL ๋ณ€๊ฒฝ ๊ฐ์ง€ chrome.tabs.onUpdated.addListener((tabId, changeInfo, tab)=>{ if(changeInfo.status === 'complete')..
Chrome Extension ๋งŒ๋“ค๊ธฐ - 1 ๐Ÿ’ก Chrome Storage๋ฅผ ํ™œ์šฉํ•œ Extension์˜ CRUD [ ํ™˜๊ฒฝ ] [FE] HTML / CSS [BE] Javascript / JQuery [DB] Chrome Storage Chrome Extension ( MV3 ) [ manifest.json ] Chrome Extension์˜ ๋ผˆ๋Œ€๊ฐ™์€ ์กด์žฌ์ธ manifest.json ์ž‘์„ฑ! manifest๋งŒ ์ž‘์„ฑํ•ด๋„ Chrome Extension์— ์˜ฌ๋ ค ์•ฑ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. { "name": "Docong", "description": "Docong Extension", "version": "1.0", "manifest_version": 3", "action": { "default_popup": "pop..
์ ์ด
'๐Ÿ’ป ๊ฐœ๋ฐœ ์ผ์ง€/FrontEnd' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก