为什么代码有错误?
var images = ['/test/img/Gallery/large/4cba0c8a-4acc-4f4a-9d71-0a444afdf48d.jpg','/test/img/Gallery/large/4cba0ca8-2158-41af-829a-0a444afdf48d.jpg','/test/img/Gallery/large/4cbc549a-5228-433f-b0bc-0a444afdf48d.jpg'];
$('.triggerNext').click(function(){
nextImage();
return false;
});
function nextImage(){
currentImage = $('.Pagepage:eq(0)').val();
nextImage = parseInt(currentImage)+1;
$('#imageCurrent').attr('src',images[nextImage]);
$('#imageCurrent') .css('position','absolute').css('left',($(window).width()- $('#imageCurrent').width() )/2);
$('.Pagepage').val(nextImage);
}
Run Code Online (Sandbox Code Playgroud)
它第一次运行正确,但点击后出错.
然而,下面的代码运行良好,没有任何错误:
var images = ['/test/img/Gallery/large/4cba0c8a-4acc-4f4a-9d71-0a444afdf48d.jpg','/test/img/Gallery/large/4cba0ca8-2158-41af-829a-0a444afdf48d.jpg','/test/img/Gallery/large/4cbc549a-5228-433f-b0bc-0a444afdf48d.jpg'];
$('.triggerNext').click(function(){
currentImage = $('.Pagepage:eq(0)').val();
nextImage = parseInt(currentImage)+1;
$('#imageCurrent').attr('src',images[nextImage]);
$('#imageCurrent') .css('position','absolute').css('left',($(window).width()- $('#imageCurrent').width() )/2);
$('.Pagepage').val(nextImage);
return false;
});
Run Code Online (Sandbox Code Playgroud)

这似乎是你function在这里覆盖你的:
nextImage = parseInt(currentImage)+1;
Run Code Online (Sandbox Code Playgroud)
从您的function或更改名称variable.更好的是,不要使用global namespace.无论如何,你不能覆盖name函数,你正在覆盖函数本身.
在上面的行之后,nextImage包含一个Number显然无法执行的行.
从评论中得出
只需替换nextImage = parseInt(currentImage)+1; with var nextImage => parseInt(currentImage)+1; - Alin Purcaru
使用var语句,也可以避免nextImage进入全局命名空间.
| 归档时间: |
|
| 查看次数: |
117 次 |
| 最近记录: |