Greasy Fork

Greasy Fork is available in English.

点击Bing分享按钮获取背景图片

点击Bing右下角分享按钮,在新标签页中打开背景图片

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Greasemonkey 油猴子Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Userscripts ,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name         点击Bing分享按钮获取背景图片
// @namespace    https://github.com/DarknessChaser
// @version      0.0.2
// @description  点击Bing右下角分享按钮,在新标签页中打开背景图片
// @author       漆黑菌
// @homepage     https://github.com/DarknessChaser
// @icon         data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAADf0lEQVR42uzYA2wsexSA8cdyM7Webdu2bdu2bdu2bdu4tq3a3T33S3JucnLSmXRRJf2S38Wcdr2D/0IDDTRQ77dYD91HlsrRvxtQgwS6rRw8j0+xGnKwFvbDBbgXr+NHDMdUNEIQpR6j8SauwG7IQ0baB6JmIw7pJo24HVlIq6MgXRDHXIxU9hX9GO+rz/EjRupMPHyb7gO/FaJGYyS+x+M4BzthCfcd2QuihiKqJXAC/ocYtyLlRkPQinLY1kMOfPZBD4YtD6/jayxhtmfhQ/dRiSHpdoKoJ2G7CILJKIx40P/DdpyZXQHbEmg288OQdO9C1GqwvWhmF0V8ef+F7XX/e65fzfz+VHZ1rebV9B0GUX/DdoCZ/Wm2L4JqM9sEPvukPkzno/EjfIVoh6hKMzsEon4323eAqOnorLEQ9TSSaiuIqkYhfN9C1BFm+xEQ9avZ/jhEPQjfaRDjKCRVDM3us7kDbLeGPIhjIOpns9ew++Vt3F7ocXfgmok8JN39EKcav+Jd/O6e1KPqW3fnz+JdiPElBqMW4sRxAFIqy95ZD5mLg5B2B+B7tEMyLI6JeB9nIEBGi2ELHIYzcAmuwc24E3fjXvwLUcPxoM5vxAU4DrtgDeShT/S8+4L2iz6GqOvRay2BDbAbjsAZuAK342G8iHfxJard3ma8h6H4FV/ibTyNA5CRyjEY0kN2Q9pdAulBhyG0hdGV1sDnWAqzMA3zVINqQguakcDtWNC5GIeE2fcvgpgKUIYAP+M5ZKwsdKWVIEY5+nw7QFRrb697BChFsVGIAEUI1GruPia79Y9FzLl1Ah1o07+bzMdtHG7ECCTVCRiJZkgvGI6kWg5xSC/6P9mPxzxMwTJmWwvmqBpVpxpQr383GS36dwcSAMgvmaHQaEp1TxLDVlgDgdk7XIAV0C8KMB3+2m8RnIFTsBh85+Ei+NnDaMWnWALd0vUQNTXkQvZu2HaKmDW729sEGa0Y1RD1eMhywkzY9ou4Ar8XYjTjEGSsRyGqHSuZWSXEWMvMSv0MtvPcXiqOC5B2m7gbfjR0zQ84DbbJZnYcfHugHmKch7T63q1RF8P3LES9GLG8di86ayPMdqcAMaTc5JBFGdsFEPU5bHea2bMIaz3zvalGFlJuJ7yKoxDWEpiJOA6DbQ3Uox07IKplcAU2Q48UwzIRe5/5k2AYImAUAABUH0vEwQOnZwAAAABJRU5ErkJggg==
// @include      *://cn.bing.com/
// @include      *://cn.bing.com/?*
// @include      *://www.bing.com/
// @include      *://www.bing.com/?*
// @connect      cn.bing.com
// @run-at       document-body
// @grant        window.open
// @grant        GM_xmlhttpRequest
// @noframes
// ==/UserScript==

(function () {
  'use strict';
  //在当前页面获取图片地址
  function getURLByLocal() {
    // 从行内css属性background-image中获取今日必应图片的url()
    var picUrl = document.querySelector('#bgDiv').style.backgroundImage

    //如果css属性background-image写在外部css或者style标签中
    if (picUrl === '') {
      var style0 = document.styleSheets[0] //获取外部css样式文件对象
      var rules = style0.cssRules.length //获取该css文件中的样式数量
      for (var i = 0; i < rules; i++) {
        //遍历所有样式 找到选择器为#bgDiv的样式的背景图片属性(包含url)
        if (style0.cssRules[i].selectorText === '#bgDiv') {
          picUrl = style0.cssRules[i].style.backgroundImage
        }
      }
    }
    //从背景图片属性中取出图片地址(去掉 前引号url前括号 和 后括号后引号 等字符)
    picUrl = picUrl.substring(5, picUrl.length - 2)
    return picUrl
  }
  // 从服务器获取图片地址
  function getImgByOnline(callback) {
    GM_xmlhttpRequest({
      url: 'https://cn.bing.com/HPImageArchive.aspx?format=js&n=1',
      method: "GET",
      onload: function (data) {
        if (data.status !== 200) return false
        window.location.href = JSON.parse(data.responseText).images[0].url
      }
    })
  }
  document.getElementById("shBingAppQR").onclick = function () {
    var url = getURLByLocal()
    if (url !== undefined) {
      window.open(url)
    } else {
      getImgByOnline()
    }
  };
})();