您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Hides all articles that is hidden behind a paywall
- // ==UserScript==
- // @name DT+ hider
- // @namespace Danielv123
- // @version 1.1
- // @description Hides all articles that is hidden behind a paywall
- // @author Danielv123
- // @match https://www.dt.no/*
- // @grant none
- // ==/UserScript==
- (function() {
- 'use strict';
- // remove articles on frontpage
- let paidArticles = document.querySelectorAll(".df-skin-paywall");
- let numberOfFreeArticles = document.querySelectorAll(".df-article").length - paidArticles.length;
- console.log("Removed " + paidArticles.length + " paid articles, " + numberOfFreeArticles + " free articles left.");
- for(let i = 0; i < paidArticles.length;i++){
- paidArticles[i].style.display = "none";
- }
- // Let's check if the browser supports notifications
- if (!("Notification" in window)) {
- }
- // Let's check whether notification permissions have already been granted
- else if (Notification.permission === "granted") {
- // If it's okay let's create a notification
- if(paidArticles.length > 0 && numberOfFreeArticles > 0){
- var notification = new Notification("Removed " + paidArticles.length + " paid articles, " + numberOfFreeArticles + " free articles left.");
- }
- }
- // Otherwise, we need to ask the user for permission
- else if (Notification.permission !== 'denied') {
- Notification.requestPermission(function (permission) {
- // If the user accepts, let's create a notification
- if (permission === "granted") {
- if(paidArticles.length > 0 && numberOfFreeArticles > 0){
- var notification = new Notification("Removed " + paidArticles.length + " paid articles, " + numberOfFreeArticles + " free articles left.");
- }
- }
- });
- }
- // remove articles on article pages
- // find the + sign and trace article box from parentElements
- // timeout apparently required
- setTimeout(function(){
- paidArticles = document.querySelectorAll(".am-premium-logo--imageoverlay");
- for(let i = 0; i < paidArticles.length;i++){
- paidArticles[i].parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.style.display = "none";
- }
- if(paidArticles && paidArticles.length > 0){
- console.log("Removed " + paidArticles.length + " paid articles");
- }
- },1000);
- })();