我需要使用jquery显示/隐藏元素

时间:2011-04-21 06:49:10

标签: jquery

http://jsfiddle.net/MEKRM/这是我的小提琴

我想在单击下一个/上一个时显示/隐藏元素。但是,ID将动态生成(mysql echo)。我有什么想法可以继续吗?谢谢

4 个答案:

答案 0 :(得分:5)

这就是您要找的内容:http://jsfiddle.net/MEKRM/5/

我在块中添加了.block个类,以防您对.hideme类有任何其他用途

$(document).ready(function() {
    $('.block:first').show();
    $('#next').click(function() {
        var $block = $('.block:visible:first'); //get the block that's visible
        if ($block.next().length) { //check if you have a next and move it there
            $block.hide().next().show();
        }
    });
    $('#previous').click(function() {
        var $block = $('.block:visible:first');
        if ($block.prev().length) {
            $block.hide().prev().show();
        }
    });
});

答案 1 :(得分:2)

http://jsfiddle.net/MEKRM/4/

$(document).ready(function() {
        $("#1").show();

        $('#next').click(function(){
            $('.hideme:visible').hide().next().show();
            if ($('.hideme:visible').length == 0)
            {
                $('.hideme').first().show();
            }
        });

        $('#previous').click(function(){
            $('.hideme:visible').hide().prev().show();
            if ($('.hideme:visible').length == 0)
            {
                $('.hideme').last().show();
            }
        });

});  

这样做,对于类hideme的所有元素都隐藏当前元素,并显示下一个/上一个元素。然后进行检查以确保一个是可见的,如果没有则显示第一个/最后一个。

我还建议不要使用数字ID,因为它们不是有效的HTML。你应该用一个字符串预先修复它们,例如" lorem1"," lorem2"等

答案 2 :(得分:1)

答案 3 :(得分:-1)

foreach(input in document.getElementsByTagName("input")
{
   if(input.indexOf('xyz') > -1)
   {
       //you found input you interested in
   }
}