🎉 欢迎访问GreasyFork.Org 镜像站!本镜像站由公众号【爱吃馍】搭建,用于分享脚本。联系邮箱📮

Greasy fork 爱吃馍镜像

Youtube Music Share telegram

Adds telegram share option using native uri scheme

You will need to install an extension such as Tampermonkey, Greasemonkey or Violentmonkey to install this script.

You will need to install an extension such as Tampermonkey to install this script.

You will need to install an extension such as Tampermonkey or Violentmonkey to install this script.

You will need to install an extension such as Tampermonkey or Userscripts to install this script.

You will need to install an extension such as Tampermonkey to install this script.

You will need to install a user script manager extension to install this script.

(I already have a user script manager, let me install it!)

🚀 安装遇到问题?关注公众号获取帮助

公众号二维码

扫码关注【爱吃馍】

回复【脚本】获取最新教程和防失联地址

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

(I already have a user style manager, let me install it!)

🚀 安装遇到问题?关注公众号获取帮助

公众号二维码

扫码关注【爱吃馍】

回复【脚本】获取最新教程和防失联地址

// ==UserScript==
// @name         Youtube Music Share telegram
// @namespace    http://tampermonkey.net/
// @version      0.3
// @description  Adds telegram share option using native uri scheme
// @author       You
// @match        *://music.youtube.com/*
// @icon         https://www.google.com/s2/favicons?domain=youtube.com
// @require https://greasyfork.org/scripts/398990-waitforkeyelementsvanilla/code/waitForKeyElementsVanilla.js?version=785857
// @grant        none
// ==/UserScript==

;(function () {
	'use strict'
	/**
	 * @param string $url Absolute URL to share, e.g. "https://example.com/path/to/article?with=params"
	 * @param string $text Optional comment to share URL with, e.g. "Check out this article!"
	 * @return string Button HTML markup, feel free to modify to your taste
	 */
	function telegramForwardButton(text = '') {
		const link =
			document.getElementById('share-url').value

		//encodeURIComponent encodes '=' character!!!

		//return `<button><a target='__blank' href=\"https://t.me/share/url?url=${encodeURI(url)}&text=${encodeURI(text)}">Telegram</a></button>`;
		return `
<a target='__blank' href=\"tg://msg_url?url=${encodeURIComponent(
			link
		)}&text=${encodeURI(text)}"
 style="  display:flex; flex-direction:column; text-decoration: none; color: white;
     align-items: center;

 "
><svg

  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:cc="http://creativecommons.org/ns#"
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg"
  xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
  xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" id="svg2"
  version="1.1" inkscape:version="0.91+devel r" width="65" height="65" viewBox="0 0 512 512" sodipodi:docname="telegram.svg"

  style="
    margin-left: var(--ytd-margin-base);
    margin-right: var(--ytd-margin-base);
    margin-bottom: var(--ytd-margin-2x);"
  >
  <metadata id="metadata8">
    <rdf:RDF>
      <cc:Work rdf:about="">
        <dc:format>image/svg+xml</dc:format>
        <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
        <dc:title/>
      </cc:Work>
    </rdf:RDF>
  </metadata>
  <defs id="defs6"/>
  <sodipodi:namedview pagecolor="#ffffff" bordercolor="#666666" borderopacity="1" objecttolerance="10" gridtolerance="10" guidetolerance="10" inkscape:pageopacity="0" inkscape:pageshadow="2" inkscape:window-width="1920" inkscape:window-height="1024" id="namedview4" showgrid="false" showguides="false" inkscape:zoom="1.625" inkscape:cx="607.07692" inkscape:cy="256" inkscape:window-x="0" inkscape:window-y="29" inkscape:window-maximized="1" inkscape:current-layer="svg2"/>
  <circle style="opacity:1;fill:#4aaee8;fill-opacity:1;stroke:none;stroke-width:91.3417511;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" id="path3344" cx="256" cy="256" r="225"/>
  <path style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:91.3417511;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" d="m 263.5553,362.57139 c -2.47405,-2.49722 -11.18811,-17.70742 -19.36459,-33.80047 -8.17651,-16.09305 -16.52273,-31.62674 -18.54717,-34.51935 -2.30764,-3.29722 -15.36044,-11.13747 -34.98817,-21.01588 -35.30919,-17.77074 -40.05393,-21.58385 -39.09856,-31.42161 0.87293,-8.98884 4.4521,-10.8486 54.15657,-28.14004 22.73442,-7.90897 59.40415,-20.66244 81.4883,-28.34108 22.08414,-7.67862 42.60204,-13.96114 45.59532,-13.96114 6.24973,0 12.12164,5.52466 12.12164,11.40481 0,2.21336 -7.3663,25.29767 -16.36953,51.29851 -9.00326,26.00084 -19.33718,55.90095 -22.96426,66.44468 -12.2606,35.64064 -21.63633,59.51235 -24.7674,63.06053 -4.29348,4.86547 -11.88159,4.42194 -17.26215,-1.00896 z" id="path3340" inkscape:connector-curvature="0"/>
</svg>Telegram</a> `
	}
	let funcDone = false
	console.log('add share')
	if (!funcDone)
		window.addEventListener(
			'yt-navigate-start',
			addShare
		)
	function addShare(el) {
		//
		//if (funcDone) return;
		let cont = document.createElement('div')
		cont.style.display = 'inline-block'
		cont.style.margin = '0 8px 0 0'
		cont.innerHTML = telegramForwardButton(
			'Зацени эту песню))'
		)
		el.prepend(cont)
		 
		//
		funcDone = true
	}
	//if (!funcDone) window.addEventListener('ytmusic-sticky-element-stuck', addShare);
	//if (document.body && !funcDone) {
	waitForKeyElements(
		'#share-targets #list > #contents ',
		addShare
	) // eslint-disable-line no-undef
	//}

	// Your code here...
})()