【问题标题】:Trying to change Steam backgrounds randomly with Tempermonkey, always getting "Parsing Error: Unexpected Token" error尝试使用 Tempermonkey 随机更改 Steam 背景,总是出现“Parsing Error: Unexpected Token”错误
【发布时间】:2020-03-04 19:56:20
【问题描述】:

这里是我的代码

(function() {
    'use strict';

    var imagesArray = [

        "https://steamcdn-a.akamaihd.net/steamcommunity/public/images/items/583660/361fda7dfb819158079afbf50b7ca13d1ffa6468.jpg",
        "https://steamcdn-a.akamaihd.net/steamcommunity/public/images/items/203770/c6f5ea583b7883659e35fbedf1b21220dc230dda.jpg"

                  ];

function setBackground(){
    const background = document.querySelector('.profile_background_image_content')
    const randomImage = imagesArray[Math.floor(Math.random() * imagesArray.length + 1)]
    background.style.backgroundImage = url(${randomImage}) !important
}

setBackground()

})();

好吧,老实说,我不知道它为什么会出错,或者我正在做正确的事情。我将不胜感激。

【问题讨论】:

  • backgroundImage 属性必须是字符串
  • @James 不是 url(${randomImage}) 已经是一个字符串吗?我应该改变什么?
  • 它不是一个字符串,它会是这样一个字符串:"url(${randomImage}) !important" 你的代码中缺少引号。

标签: javascript css userscripts


【解决方案1】:

你应该把它包起来

url(${randomImage}) !important

这样的反引号

   `url(${randomImage}) !important`

【讨论】:

  • 首先,谢谢。更改它可以解决“Parsing Error: Unexpected Token”错误,但遗憾的是脚本仍然无法正常工作。基本上什么都没有发生。
  • 要从 arr 获取值,您需要从 const randomImage = imagesArray[Math.floor(Math.random() * imagesArray.length + 1)] 中删除“+1”
【解决方案2】:

成功了

(function() {
    'use strict';

    document.addEventListener("DOMContentLoaded", function() {

        var imagesArray = [
            "https://steamcdn-a.akamaihd.net/steamcommunity/public/images/items/583660/361fda7dfb819158079afbf50b7ca13d1ffa6468.jpg",
            "https://steamcdn-a.akamaihd.net/steamcommunity/public/images/items/203770/c6f5ea583b7883659e35fbedf1b21220dc230dda.jpg"
        ];

        const background = document.querySelector('div.profile_page');
        const randomImage = imagesArray[Math.floor(Math.random() * imagesArray.length)];
        background.style.backgroundImage = 'url('+randomImage+')';
        background.style.backgroundColor = 'black';
        background.style.backgroundSize = 'contain';

    });

})();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多