Complete remake & Added redirect
This commit is contained in:
parent
ad69d761ad
commit
e0a1d57ad9
3 changed files with 44 additions and 36 deletions
47
Content.js
47
Content.js
|
@ -1,38 +1,25 @@
|
|||
|
||||
function removeShortButtons(){
|
||||
const shortsButtons = document.querySelectorAll('a[title="Shorts"]');
|
||||
const observer = new MutationObserver(mutations => {
|
||||
mutations.forEach(mutation => {
|
||||
mutation.addedNodes.forEach(node => {
|
||||
if (node.nodeType !== Node.ELEMENT_NODE) return;
|
||||
|
||||
shortsButtons.forEach(button => {
|
||||
button.remove();
|
||||
});
|
||||
}
|
||||
|
||||
function removeShortSections(){
|
||||
const sections = document.querySelectorAll("span#title.style-scope.ytd-rich-shelf-renderer");
|
||||
sections.forEach(title => {
|
||||
if (title.textContent.trim() === "Shorts") {
|
||||
var section = title;
|
||||
for (let i = 1; i < 7; i++) {
|
||||
section = section.parentElement;
|
||||
if (!section){
|
||||
return;
|
||||
}
|
||||
// Remove shorts from sidebar
|
||||
if (node.tagName === "A" && node.title === "Shorts"){
|
||||
node.remove();
|
||||
}
|
||||
|
||||
if (section.className == "style-scope ytd-rich-shelf-renderer") {
|
||||
section.style.display = "none";
|
||||
// Remove shorts sections from right side
|
||||
if (node.nodeName.toLowerCase() === "ytd-reel-shelf-renderer"){
|
||||
node.remove();
|
||||
}
|
||||
}
|
||||
|
||||
// Remove shorts sections
|
||||
if (node.hasAttribute?.("is-shorts")){
|
||||
node.remove();
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
document.addEventListener("DOMContentLoaded", function () {
|
||||
removeShortButtons();
|
||||
removeShortSections();
|
||||
});
|
||||
|
||||
const observer = new MutationObserver(function (mutations) {
|
||||
removeShortButtons();
|
||||
removeShortSections();
|
||||
});
|
||||
observer.observe(document.body, { childList: true, subtree: true });
|
||||
observer.observe(document.body, {childList: true, subtree: true});
|
||||
|
|
7
Redirect.js
Normal file
7
Redirect.js
Normal file
|
@ -0,0 +1,7 @@
|
|||
|
||||
if (location.pathname.startsWith("/shorts/")) {
|
||||
const videoID = location.pathname.split("/")[2];
|
||||
if (videoID) {
|
||||
location.replace("https://www.youtube.com/watch?v=${videoID}");
|
||||
}
|
||||
}
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"manifest_version": 2,
|
||||
"name": "Block Youtube Shorts",
|
||||
"description": "Blocks the Youtube Short buttons and sections on the main page.",
|
||||
"manifest_version": 3,
|
||||
"name": "Remove Youtube Shorts",
|
||||
"description": "Removes any trace of Shorts from Youtube.",
|
||||
"version": "1.0",
|
||||
"icons": {
|
||||
"16": "icon16.png",
|
||||
|
@ -9,11 +9,25 @@
|
|||
"48": "icon48.png",
|
||||
"128": "icon128.png"
|
||||
},
|
||||
"permissions": ["scripting"],
|
||||
"host_permissions": ["*://www.youtube.com/*"],
|
||||
"content_scripts": [
|
||||
{
|
||||
"matches": ["*://www.youtube.com/*"],
|
||||
"js": ["Content.js"]
|
||||
"js": ["Content.js"],
|
||||
"run_at": "document_idle"
|
||||
},
|
||||
{
|
||||
"matches": ["*://www.youtube.com/*"],
|
||||
"js": ["Redirect.js"],
|
||||
"run_at": "document_start"
|
||||
}
|
||||
]
|
||||
],
|
||||
"action": {
|
||||
"default_icon": {
|
||||
"16": "icon16.png",
|
||||
"32": "icon32.png"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue