いかそうめんの格ゲー日記

方向性はあまり定まっていませんが、漫画と格ゲーに関する記事の二本柱でやっていきます。

manifest.json

{
  "name": "Sample",
  "version": "1.0.0",
  "manifest_version": 3,
  "description": "Sample Chrome Extension",
  "content_scripts": [{
    "matches": ["https://www.google.com/"],
    "js": [
      "content.js"
    ]
  }]
}

 

content.js

 

window.alert('hogehoge');

 

 

 





 





// ホームアイコン変更
const style = document.createElement('style');
style.textContent = '.r-18jsvk2.r-4qtqp9.r-yyyyoo.r-16y2uox.r-8kz0gk.r-dnmrzs.r-bnwqim.r-1plcrui.r-lrvibr.r-lrsllp {' +
'  display: none;' +
'}' + 
'.css-901oao.r-1awozwy.r-18jsvk2.r-6koalj.r-18u37iz.r-16y2uox.r-1tl8opc.r-a023e6.r-b88u0q.r-1777fci.r-rjixqe.r-bcqeeo.r-q4m81j.r-qvutc0 {' +
'  background-image: url(' + chrome.runtime.getURL('icons/logo_blue.png') + ');' +
'  background-size: 28px;' +
'  background-repeat: no-repeat;' +
'  background-position: center;' +
'}';
document.body.appendChild(style);

// タブアイコン変更
const linkElement = document.querySelector('link[rel="shortcut icon"]');
if (linkElement) {
    linkElement.setAttribute('href', chrome.runtime.getURL('icons/logo_blue_32_32.png'));
}

 




    const elements = document.querySelectorAll('.css-901oao.css-16my406.r-1tl8opc.r-bcqeeo.r-qvutc0');
    for (let element of elements) {
        if (element.textContent === 'ポストする') {
            element.textContent = 'ツイートする';
        }
    }


function replaceText() {
    const elements = document.querySelectorAll('.css-901oao.css-16my406.r-1tl8opc.r-bcqeeo.r-qvutc0');
    for (let element of elements) {
        if (element.textContent === 'ポストする') {
            element.textContent = 'ツイートする';
        }
    }
}

const observer = new MutationObserver(function(mutations) {
    mutations.forEach(function(mutation) {
        replaceText();
    });
});

const targetNode = document.body; // 監視対象のノード
const config = { childList: true, subtree: true }; // 監視の設定
observer.observe(targetNode, config); // 監視を開始

replaceText(); // 初期表示時のテキスト置換