循环浏览数组Javascript

时间:2015-12-07 12:11:30

标签: javascript jquery

我的数组var myImages = [];曾经我console.log()数组(我将项目推入上面)我得到了回复:

["01_img"]
["02_img"]
["03_img"]
["04_img"]
["05_img"]

然后onClick我更改了div的背景,以便从数组中获得背景图片。

$('.div_content').css('background-image', 'url(https://url/path/images/' + myImages + '.png)');

如何更改制作,因此我的背景图片已更改onClick

我按照我发现的例子进行了尝试,但没有取得胜利:

    $('.btn').on('click', function(){
      var myIndex = 1;
          myIndex = (myIndex+1)%(myImages.length);

          $('.div_content').css('background-image', 'url(https://url/path/images/' + myIndex + '.png)');)
    });

感谢任何帮助,谢谢。

3 个答案:

答案 0 :(得分:2)

如果我从核心理解您的问题,您应该只在全局或外部范围内定义myIndex变量

var myIndex = 0;
$('.btn').on('click', function(){
    $('.div_content').css('background-image', 'url(https://url/path/images/' + myImages[myIndex] + '.png)');
    myIndex = (myIndex+1)%(myImages.length);
});

答案 1 :(得分:2)

每次单击myIndex var都设置为1.删除行var myIndex = 1;并将myIndex作为全局变量。

此外,您需要使用myImages[myIndex]代替myIndexmyIndex将从myImages获取该值var myIndex = 0; $('.btn').on('click', function(){ myIndex = (myIndex+1)%(myImages.length); $('.div_content').css('background-image', 'url(https://url/path/images/' + myImages[myIndex] + '.png)');) });

var myIndex = 0;
$('.btn').on('click', function(){
      // Short hand if: If the statement is true, use the first value, else (':') the second.
      myIndex = (myIndex+1)%(myImages.length);
      $('.div_content').css('background-image', 'url(https://url/path/images/' + myImages[myIndex] + '.png)');)
});

答案 2 :(得分:1)

myIndex

您应该通过声明一个全局变量来存储数组中的位置:myIndex = Math.floor(Math.random() * myImages.length); ,然后递增该数字并确保它不超过数组长度(减去1,因为数组长度从0开始) )。

如果您想从阵列中随机选择,请尝试以下方法:

myImages[myIndex]

然后,您可以使用 <style name="MyTheme" parent="@android:style/Theme.Holo.Light"> <item name="android:actionBarStyle">@style/MyActionBar</item> <item name="android:titleTextStyle">@style/ActionBar.titleTextStyle</item> </style><style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar"> <item name="android:background">#417bde</item> </style> <style name="ActionBar.titleTextStyle" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Title"> <item name="android:textColor">#ffffff</item> 简单地请求该位置的值。