URLとタイトルを取得するブックマークレット
こんにちは。お久しぶりです。
自分用のメモです。
ブックマークレットって、SafariやChromeなど、基本的にどのブラウザでも同じように動くので、便利ですよね。
ブックマークレットの基本形
1javascript:(function() {
2 // ここにコードをかく
3})();
URLとタイトルを取得するブックマークレット
適当に書きました。
1javascript:(function() {
2 const title = document.title;
3 const url = new URL(window.location.href);
4 const copyText = `\n${title}\n${url}\n`;
5 const dummy = document.createElement('textarea');
6 document.body.appendChild(dummy);
7 dummy.value = copyText;
8 dummy.select();
9 document.execCommand('copy');
10 document.body.removeChild(dummy);
11 window.alert(copyText);
12})();
コードを1行にする
ChatGPTに以下のようなプロンプトでお願いすると、適当に1行にしてくれます。
1以下のブックマークレットから不要なスペースや改行を削除して、1行にしてください。
2
3```javascript
4javascript:(function() {
5 const title = document.title;
6 const url = new URL(window.location.href);
7 const copyText = `\n${title}\n${url}\n`;
8 const dummy = document.createElement('textarea');
9 document.body.appendChild(dummy);
10 dummy.value = copyText;
11 dummy.select();
12 document.execCommand('copy');
13 document.body.removeChild(dummy);
14 window.alert(copyText);
15})();
16```
結果
1javascript:(function(){const title=document.title;const url=new URL(window.location.href);const copyText=`\n${title}\n${url}\n`;const dummy=document.createElement('textarea');document.body.appendChild(dummy);dummy.value=copyText;dummy.select();document.execCommand('copy');document.body.removeChild(dummy);window.alert(copyText);})();
コードをミニファイする
ChatGPTに以下のようなプロンプトでお願いすると、ミニファイしてくれます。
1以下のブックマークレットを、ミニファイしてください。
2
3```javascript
4javascript:(function() {
5 const title = document.title;
6 const url = new URL(window.location.href);
7 const copyText = `\n${title}\n${url}\n`;
8 const dummy = document.createElement('textarea');
9 document.body.appendChild(dummy);
10 dummy.value = copyText;
11 dummy.select();
12 document.execCommand('copy');
13 document.body.removeChild(dummy);
14 window.alert(copyText);
15})();
16```
結果
1javascript:(function(){const t=document.title,u=new URL(window.location.href),c=`\n${t}\n${u}\n`,d=document.createElement("textarea");document.body.appendChild(d),d.value=c,d.select(),document.execCommand("copy"),document.body.removeChild(d),window.alert(c)})();
Tags: