「そのページのタイトルでググる」というボタンを追加する
ver. 2(2021/11/3)
script.js// 検索窓の要素を取得しておく
const form = document.querySelector('.form-control');
// Google検索のqueryに飛ばす
const gooURL = "https://www.google.com/search?q="
function google(word) {
window.open(gooURL+word)
}
scrapbox.PageMenu.addMenu({
title: "ググる",
image: 'https://i.gyazo.com/b0e069380f2926b79ef0487d766c9299.png',
onClick: () => {
let word = "";
// 検索窓に値がある場合は検索窓のワードでググる
form.value == "" ? word = scrapbox.Page.title : word = form.value;
google(word)
}
})
ver. 1
script.js// グーグル検索のURL
const gooURL = "https://www.google.com/search?q="
// ググる関数の宣言
function google(word) {
window.open(gooURL+word)
}
// 「ググる」ボタンの設置
scrapbox.PageMenu.addMenu({
title: "ググる",
image: 'https://i.gyazo.com/3e12ec4d11e9b6cb72e64f07d3eea990.png',
onClick: ()=>google(scrapbox.Page.title)
})
style.css.tool-btn[id="ググる"] {
opacity: 0.3;
}
別版
ページメニューの中に項目を作るバージョン
script.js// ページメニューに項目を追加する処理の定義
function addItem(title, image, onClickFunc) {
scrapbox.PageMenu.addItem({
title: title,
image: image,
onClick: () => onClickFunc()
})
}
ここのonClickのところで少し苦戦。
script.js// Googleでタイトルのワードを検索する
const googleSearch = (site="") => {
site = site;
const word = scrapbox.Page.title;
const GOOGLE_SEARCH = "https://www.google.com/search?q=";
window.open(`${GOOGLE_SEARCH}${site}${word}`);
}
// GoogleでScrapbox限定で検索をする
const googleSearchInSB = () => {googleSearch("site%3Ascrapbox.io+")}
// 項目を追加するための準備
const itemList = [
['Google search',null,googleSearch],
['Google search in SB',null,googleSearchInSB],
]
// ページメニューに項目を追加
itemList.forEach(item => {
addItem(item[0],item[1],item[2]);
})
余談
Googleの部分をDuckduckgoにすることで検索エンジンを変えられる