Add a button for downloading bing-daily-pictures.添加一个必应每日图片下载按钮。
当前为
// ==UserScript==
// @name Bing Daily Pictures Download button|必应每日图片下载按钮
// @namespace https://greasyfork.org/en/users/131965-levinit
// @author levinit
// @description Add a button for downloading bing-daily-pictures.添加一个必应每日图片下载按钮。
// @include *://cn.bing.com/
// @include *://www.bing.com/
// @include *://www.bing.com/?*
// @include *://cn.bing.com/?*
// @run-at document-start
// @version 0.1.2
// @grant none
// ==/UserScript==
//添加下载按钮的函数
function addBtn() {
// 从行内css属性background-image中获取今日必应图片的url()
let picUrl = document.querySelector("#bgDiv").style.backgroundImage;
//如果css属性background-image写在外部css或者style标签中
if (picUrl === "") {
let style0 = document.styleSheets[0];
let styles = style0.cssRules.length;
for (let i = 0; i < styles; i++) {
if (style0.cssRules[i].selectorText === "#bgDiv") {
picUrl = style0.cssRules[i].style.backgroundImage;
}
}
}
//今日必应图片的名称
let picName = picUrl.substring(
picUrl.lastIndexOf("/") + 1,
picUrl.length - 2
);
//今日必应图片的url
picUrl = picUrl.substring(5, picUrl.length - 2);
//在必应首页添加下载按钮
let btn = document.createElement("a");
let text = null;
if (navigator.language.indexOf("zh") >= 0) {
text = document.createTextNode("下载今日必应图片");
} else {
text = document.createTextNode("Download Today Bing Pictures");
}
btn.style.cssText =
"display:inline-block;padding:0.25em;border-radius:0.25em;position:fixed;z-index:1000;right:20%;top:12%;background-color:#c3d1cf94;font-size: 1.5em;";
btn.download = picName;
btn.href = picUrl;
btn.appendChild(text);
document.body.appendChild(btn);
}
//定时器周期行检测今日必应图片是否加载成功
let timer = setInterval(function () {
//获取到今日必应图片后添加按钮 停止周期检测
if (document.querySelector("#bgDiv").style.backgroundImage) {
addBtn();
clearInterval(timer);
}
}, 233);