【问题标题】:Loop through images and set background on hover in wix velo遍历图像并在 wix velo 中悬停时设置背景
【发布时间】:2021-06-09 05:49:05
【问题描述】:

我正在尝试设置 wix 条的背景图像,以在悬停时通过循环遍历数组来更改图像。我没有看到编辑器中出现任何错误,但它仍然无法正常工作。这是我当前的代码。

$w.onReady(function () {
var image1 = "https://workful.com/blog/wp-content/uploads/2019/10/Women-in-Small-Business.jpg";

var image2 = "https://data.europa.eu/sites/default/files/news/2020-25-3.jpg";

var image3 = "https://thumbor.forbes.com/thumbor/960x0/https%3A%2F%2Fblogs-images.forbes.com%2Fstartswithabang%2Ffiles%2F2017%2F10%2FTiny_bit_of_U.jpg";


var Background_imagez = [image1,image2,image3];

let playing = false;
let current = 0;

 const run = () => {
setTimeout(() => {
    $w('#columnStrip1').background.src = Background_imagez[current];
    if (current < Background_imagez.length) {
        current++;
    } else { repeat() }
   }, 500);
   }

  const repeat = () => {
    current = 0;
      run();
     }

 $w('#text59').onMouseIn(() => {
    playing = true;
    while (playing) { run() }
    })

    $w('#columnStrip1').onMouseOut(() => {
    playing = false;
    current = 0;
    $w('#columnStrip1').background.src = 
     'https://wallpapercave.com/wp/wp2831956.png' || 
    'https://images.unsplash.com/flagged/photo-1593005510329-8a4035a7238f?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxleHBsb3JlLWZlZWR8MXx8fGVufDB8fHx8&w=1000&q=80'; // Default    
    })


    });

【问题讨论】:

    标签: javascript velo


    【解决方案1】:

    您错误地使用了for 循环。

    for 循环不返回值,因此您不能将它们分配给变量。您还错过了在分配 let index = 0 之前添加 for

    for (let index = 0; index < Background_imagez.length; index++) {
        $w('#columnStrip1').background.src = Background_imagez[index];
    }
    

    我不确定上面是否真的会显示除最后一张图片之外的任何内容,因为它可能会循环太快以至于任何人都看不到,但它应该可以解决您的 Identifier expected 错误。

    请参考MDN上for loops的文档

    【讨论】:

    • 好的,我更新了我的问题以包含我当前的代码!感谢您的文档。它似乎仍然不起作用,我在编辑器中没有看到任何错误。
    猜你喜欢
    • 1970-01-01
    • 2021-10-16
    • 2018-10-31
    • 2013-01-27
    • 2020-07-24
    • 1970-01-01
    • 2019-01-21
    • 2014-07-20
    相关资源
    最近更新 更多