Jquery没有改变图像

时间:2015-07-29 14:24:02

标签: jquery asp.net-mvc

首先,我必须说我对JQuery很陌生。我跟随w3schools的教程。我有一个带图像和一些文字的网站(h1)。我想在一段时间后改变背景图像。我已经使用了下面的jquery,但它没有工作(没有任何反应)

我的代码是:

<div class="fullscreen-bg">
        <img src="~/Content/Images/Portada2.png" class="fullscreen-bg__img" id="cover">
</div>

<div class="container page-header text-center">
        <h1 class="animated zoomIn" style="font-size:5em">Pizzeria Britannia</h1>
</div>

 <script>
        $(document).ready(function(){
            var urlArray = [
                '~/Content/Images/Portada2.png', '~/Content/Images/retina_wood_2X.png',
            ];
            var slideShowTimings = 2000;
            var i = 0
            setInterval(function () {
                var $img = $('img');
                $img.hide(slow, function () {
                    $img.attr('.src', urlArray[++i % urlArray.length]);
                    $img.show(fast)
                });
            }, slideShowTimings);
        });
</script>

你有什么想法吗?

1 个答案:

答案 0 :(得分:3)

  • 您在JavaScript中的变量前面不需要任何$
  • 您的“src”面前有一个.。在attr更改
  • 缺少分号
  • 你在那里使用%模数符号,但我不知道为什么所以如果重置为0则用三元组替换
  • fastslow需要引用才能工作,因为它们是字符串而不是变量

也许其他问题?

<script>
        $(document).ready(function(){
            var urlArray = [
                '~/Content/Images/Portada2.png', '~/Content/Images/retina_wood_2X.png',
            ];
            var slideShowTimings = 2000;
            var i = 0;
            setInterval(function () {

                // Increase i
                i++;

                // Set the value of i and loop back to 0 if desired
                i = (i > urlArray.length) ? i : 0;

                var img = $('img');
                img.hide('slow', function () {
                    img.attr('src', urlArray[i]);
                    img.show('fast');
                });
            }, slideShowTimings);
        });
</script>