添加知乎书本下载 浏览器书签脚本
This commit is contained in:
35
zhihu_book/index.bookmark.js
Normal file
35
zhihu_book/index.bookmark.js
Normal file
@@ -0,0 +1,35 @@
|
||||
javascript: (function () {
|
||||
/* 保存知乎电子书 - 浏览器书签 */
|
||||
/* 适用页面:https://www.zhihu.com/pub/reader/120208917 */
|
||||
/* 编写时间:2023-07-13 */
|
||||
let title = document.querySelector('.is-current').querySelector('.chapter-hover-title').childNodes[0].textContent;
|
||||
let html = document.querySelector('.ZhihuEPub')?.innerHTML;
|
||||
if (!html) {
|
||||
html = document.querySelector('.PubHTML')?.childNodes[0]?.childNodes[0]?.innerHTML;
|
||||
}
|
||||
|
||||
let cssPath = "main.css";
|
||||
/* let level2 = document.querySelector('.is-current').classList.contains('level-2') */
|
||||
const level = Number(document.querySelector('.is-current').classList[0].replace('level-', ''));
|
||||
for (let i = 1; i < level; i++) {
|
||||
cssPath = '../' + cssPath
|
||||
}
|
||||
|
||||
let saveHTML = [
|
||||
`<html>`,
|
||||
`<head><meta charset="UTF-8"><title>${title}</title><link rel="stylesheet" href="${cssPath}"></head>`,
|
||||
`<body class="ZhihuEPub">`,
|
||||
html,
|
||||
`</body>`,
|
||||
`</html>`
|
||||
].join('\n');
|
||||
console.log({ title, html, saveHTML });
|
||||
const blob = new Blob([saveHTML], { type: 'text/html' });
|
||||
const objectURL = URL.createObjectURL(blob);
|
||||
const aTag = document.createElement('a');
|
||||
aTag.href = objectURL;
|
||||
aTag.download = title + '.html';
|
||||
aTag.click();
|
||||
URL.revokeObjectURL(objectURL);
|
||||
document.querySelector('.reader-buttons').innerText = '成功';
|
||||
})()
|
Reference in New Issue
Block a user