Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/450.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(jquery)替换列表中图像的src?_Javascript_Jquery_Internet Explorer_Stack Overflow - Fatal编程技术网

如何使用javascript(jquery)替换列表中图像的src?

如何使用javascript(jquery)替换列表中图像的src?,javascript,jquery,internet-explorer,stack-overflow,Javascript,Jquery,Internet Explorer,Stack Overflow,在下面的示例中,我想使用js将拇指替换为大拇指 发件人: <ul id="slide"> <li><img src="pathtoimg/thumbs/imagename.jpg" /></li> <li><img src="pathtoimg/thumbs/imagename2.jpg" /></li> </ul> <ul id="slide"> <li><img s

在下面的示例中,我想使用js将拇指替换为大拇指

发件人:

<ul id="slide">
<li><img src="pathtoimg/thumbs/imagename.jpg" /></li>
<li><img src="pathtoimg/thumbs/imagename2.jpg" /></li>
</ul>
<ul id="slide">
<li><img src="pathtoimg/large/imagename.jpg" /></li>
<li><img src="pathtoimg/large/imagename2.jpg" /></li>
</ul>
至:

<ul id="slide">
<li><img src="pathtoimg/thumbs/imagename.jpg" /></li>
<li><img src="pathtoimg/thumbs/imagename2.jpg" /></li>
</ul>
<ul id="slide">
<li><img src="pathtoimg/large/imagename.jpg" /></li>
<li><img src="pathtoimg/large/imagename2.jpg" /></li>
</ul>
为了实现它,我使用了以下js代码

 $(window).load(function(){
 var images = $("#slide li img");
 for(var i = 0; i < images.length; i++)
{
var img = images[i];
var src = img.src.replace("thumbs","large");
img.src = src;
}
  });       
$(窗口).load(函数(){
var images=$(“#幻灯片li img”);
对于(var i=0;i
上述代码在现代浏览器中运行良好,但InternetExplorer7&8在第0行返回堆栈溢出。有没有其他方法可以替换列表中img的src而不会在ie上出现上述错误

提前谢谢。

像这样试试

$(document).ready(function(){

    $("#slide > li > img").each(function(){ 
        var t = $(this);
        var src = t.attr('src');
        if(!src || typeof(src)!=='string') return;
        t.attr('src',src.replace('/thumbs/','/large/'));
    }); 

});
试试这个

$(window).load(function(){
$("#slide li img").each(function(){
$(this).attr("src",$(this).attr("src").replace("thumbs","large"));
});
});

我建议
$(document).ready(function(){$(“#slide>li>img”).each(function(){var b=$(this),a=b.attr(“src”);a&“string”==typeof a&&b.attr(“src”,a.replace(“/thumbs/”,“/large/”))})你好,谢谢你的回复。我尝试在document.ready上使用您的代码,但在ie中仍然返回堆栈溢出错误。@DavidBélanger我也尝试使用您的代码。。它仍然向我显示Stackoverflow错误…@kuldeepdatary尝试此更新:
$(document.ready(function(){$(“#slide>li>img”).each(function(){var b=$(this),a=b.attr(“src”);a&&“string”==typeof a&&b.attr(“src”,a.replace(/thumbs/g,“large”)})