Discordのメッセージリンクをアプリで開くUserScript
使い方
Discordアプリをインストールしている必要があります
サンプル(お試し用)
動作確認
Porterで動作確認済み
Safari(iPhone)で動作確認済み
補足
アプリで開いたあと、しばらくメッセージに移動しないことがあるが、待っているとページが変わる
バージョン1
code:script.js
// Discordのメッセージリンクをアプリから開くようにする
// Discordアプリが入っていないと動きません
document.addEventListener('click', function(event) {
// クリックした外部リンクのURLを取得
const node = event.target.parentNode;
console.log(node.tagName);
if(node.tagName === 'A') {
const currentUrl = node.href;
const serverDomain = discord.com/channels/;
// httpsをdiscordに変換して開く
if (currentUrl.includes(serverDomain)) {
// 現在のURLから "https" を "discord" に置換する
var newUrl = currentUrl.replace("https", "discord");
// 新しいURLに移動する
window.location.href = newUrl;
// デフォルトの動作を防止する
event.preventDefault();
}
}
});
スマホでのみアプリから開くバージョン
code:script.js
// Discordのメッセージリンクをアプリから開くようにする
// Discordアプリが入っていないと動きません
document.addEventListener('touchstart', function(event) {
// クリックした外部リンクのURLを取得
const node = event.target.parentNode;
console.log(node.tagName);
if(node.tagName === 'A') {
const currentUrl = node.href;
const serverDomain = discord.com/channels/;
// httpsをdiscordに変換して開く
if (currentUrl.includes(serverDomain)) {
// 現在のURLから "https" を "discord" に置換する
var newUrl = currentUrl.replace("https", "discord");
// 新しいURLに移動する
window.location.href = newUrl;
// デフォルトの動作を防止する
event.preventDefault();
}
}
});
参考
thanks to chatGPT
コードの原型を書いてもらった。だいぶ直したけど。
便利of便利
GJ