Greasy Fork is available in English.
使哔哩哔哩动态可以查看原图以保存图片等,同时也支持空间中的动态
当前为
// ==UserScript==
// @name Bilibili 哔哩哔哩动态查看原图
// @icon https://t.bilibili.com/favicon.ico
// @namespace https://lolico.moe/
// @version 2.1
// @description 使哔哩哔哩动态可以查看原图以保存图片等,同时也支持空间中的动态
// @author Jindai Kirin
// @match https://t.bilibili.com/*
// @match https://space.bilibili.com/*
// @license GPL-3.0
// @grant none
// @run-at document-end
// @require https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js
// ==/UserScript==
(function() {
'use strict';
const findBtn = $imagesbox =>
new Promise(resolve => {
const $btn = $imagesbox.find('.bp-v-middle:contains(查看大图)');
if ($btn.length > 0) {
resolve($btn);
return;
}
new MutationObserver((mutations, self) => {
mutations.forEach(({ addedNodes }) => {
if (addedNodes.length > 0 && addedNodes[0].className === 'boost-wrap') {
self.disconnect();
resolve($imagesbox.find('.bp-v-middle:contains(查看大图)'));
}
});
}).observe($imagesbox[0], { childList: true });
});
$(document).click(async ({ target }) => {
if (target.className !== 'img-content') return;
const $imagesbox = $('.imagesbox:hover');
const $btn = await findBtn($imagesbox);
console.log($btn);
const $newBtn = $($btn.prop('outerHTML').replace('大', '原'));
$newBtn.click(() => {
window.open(
$imagesbox
.find('.boost-img img')
.attr('src')
.replace(/@.*/, '')
);
});
$btn.after($newBtn);
const removeBtn = () => $newBtn.remove();
$imagesbox.find('.bp-v-middle:contains(收起)').one('click', removeBtn);
$imagesbox.find('.boost-img').one('click', removeBtn);
});
})();