Kul*_*ary 2 javascript stack-overflow jquery internet-explorer
我想在下面的示例中使用js 将thumb替换为large
从:
<ul id="slide">
<li><img src="pathtoimg/thumbs/imagename.jpg" /></li>
<li><img src="pathtoimg/thumbs/imagename2.jpg" /></li>
</ul>
Run Code Online (Sandbox Code Playgroud)
至 :
<ul id="slide">
<li><img src="pathtoimg/large/imagename.jpg" /></li>
<li><img src="pathtoimg/large/imagename2.jpg" /></li>
</ul>
Run Code Online (Sandbox Code Playgroud)
为了实现它,我使用了以下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;
}
});
Run Code Online (Sandbox Code Playgroud)
上面的代码在现代浏览器中工作正常,但Internet Explorer 7和8 在第0行返回堆栈溢出错误.是否有任何其他方法来替换列表中的img的src而不会出现上面的错误?
提前致谢.
试试吧
$(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/'));
});
});
Run Code Online (Sandbox Code Playgroud)