Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用Href更改图像的src_Javascript_Jquery - Fatal编程技术网

Javascript 使用Href更改图像的src

Javascript 使用Href更改图像的src,javascript,jquery,Javascript,Jquery,我想每5秒更改一个链接标记中带有“href”的标记的src 代码如下: <div id="bgStretch"><img id="bgStretchimg" src="images/picture1.jpg" alt=""></div> <!-- here is the image src i want to change--> <nav class="bgNav"> <ul> <li class="act

我想每5秒更改一个链接标记中带有“href”的标记的src

代码如下:

<div id="bgStretch"><img id="bgStretchimg" src="images/picture1.jpg" alt=""></div> <!--   here is the image src i want to change-->

<nav class="bgNav">
 <ul>
  <li class="active"><a href="images/picture1.jpg"></a></li>
  <li><a href="images/picture2.jpg"></a></li>
 </ul>
</nav>
<!--these are the links so i hope you guys to gimme a solution in javascript-->

这是我尝试的jquery:

<script>
  $(document).ready(function() {
    var items = $("nav.bgNav ul li");
    var index = -1;

    function next() {
        // if not the very first iteration, 
        // remove the active class from prev item
        if (index !== -1) {
            var urlI=$(this).("a").attr(href);
            items.eq(index).removeClass("active");
        }
        // go to next item
        ++index;
        // if past end, wrap to beginning
        if (index >= items.length) {
            index = 0;
        }
        // add active class to next item
        items.eq(index).addClass("active");
    $('#bgStretchimg').attr('src', urlI);
        // schedule next iteration
        setTimeout(next, 1000);
    }

    next();
});

</script>

$(文档).ready(函数(){
var项目=$(“nav.bgNav ul li”);
var指数=-1;
函数next(){
//如果不是第一次迭代,
//从上一个项目中删除活动类
如果(索引!=-1){
var urlI=$(this)。(“a”).attr(href);
items.eq(索引).removeClass(“活动”);
}
//转到下一项
++指数;
//如果超过结束,则换行到开始
如果(索引>=items.length){
指数=0;
}
//将活动类添加到下一项
项目.eq(索引).addClass(“活动”);
$('bgStretchimg').attr('src',urlI);
//安排下一次迭代
设置超时(下一步,1000);
}
next();
});
这对我不起作用,所以我问你们,谢谢你们。

如果花了很长时间,很抱歉

这是一本书

如果您希望在第一次调用之前有一个延迟,您可能希望将其放入setTimeout中,方法与函数中相同,因此它会在第一次更改之前等待

// in document ready directly
setTimeout(function () {
    next();
}, 2000);    


可能还想寻找一个像这样已经构建好的插件:

您尝试了什么?我们可以帮助您修复现有代码,但我不会提供完整的解决方案…好的,我编辑了文档,希望您能帮助我和thx。我稍后会检查它,当我有2秒的时间时,我删除了我的向下投票和向上投票,因为您编辑了!请记住,在提出这样的问题时,始终提供代码,以便人们能够帮助您!伟大的兄弟伟大的:)@JefferyKilluminati我希望这会有帮助!你很接近。主要问题是第一个选择器
$(这个)
啊,是的,我很担心,但是非常感谢
// in document ready directly
setTimeout(function () {
    next();
}, 2000);