ID解析然后使用选择器

时间:2011-12-25 03:41:24

标签: javascript html

所以我有这个有趣的小问题,我想解析图像的ID。没有什么太复杂......但奇怪的是,我的代码似乎没有正常工作。这很奇怪。可以解释一下吗?我觉得因为自己无法看到错误而感到失明。

以下是无法正常工作的相关代码片段:

        //Toggling images using img-index variable.
        img-index = 0;
        img-src[0] = $("#ppsfb").attr("id");
        img-src[1] = $("#gty").attr("id");

        $("#cycle").click(function(){
            //Since img-index is just a counter.
            if (img-index < 2){
            img-index = img-index + 1;
            } else {img-index = 0;}                         

            $(img-src[img-index]).fadeIn(1000);             
        });

2 个答案:

答案 0 :(得分:1)

img-src不是JavaScript中的有效标识符。这可能是失败的原因。

结帐this fiddle并注意Unexpected token -错误

答案 1 :(得分:0)

img-index不是JavaScript中的有效变量名称,您可能希望使用img_indeximgIndex。另外,对来自ID选择器的内容调用attr('id')是没有意义的,$("#ppsfb").attr("id")'ppsfb'或什么都没有。你最好也可以在img_src中存储整个jQuery对象,即使修复了命名问题,你的$(img-src[img-index])也不会做你想做的事情。此外,您可能希望在显示当前图像之前隐藏或淡出当前图像。

img_index = 0;
img_src[0] = $('#ppsfb');
img_src[1] = $('#gty');

$("#cycle").click(function(){
    img_src[img_index].hide() // Or .fadeOut or ...
    if(img_index < 2)
        img_index = img_index + 1;
    else
        img_index = 0;
    img_src[img_index].fadeIn(1000);             
});

据推测,您已经完成了定位,堆叠等工作。