简体   繁体   English

使用jQuery更新所有

[英]Update all using jquery

JSFiddle . JSFiddle When i click the 2nd img then click next, it doesn't update. 当我单击第二个img然后单击下一步时,它不会更新。 I want update the both next() and img at the same time. 我想同时更新next()和img。 Is this possible ? 这可能吗 ?

Html: HTML:

<div class="myclass selected">
Content 1
</div>
<div class="myclass">
Content 2
</div>
<div class="myclass">
Content 3
</div>

<ul>
  <li><img src="http://www.lillehammer.com/ImageVault/Images/id_2122/scope_66/ImageVaultHandler.aspx" /></li>
  <li><img src="http://upload.wikimedia.org/wikipedia/commons/thumb/d/d7/Valued_image_seal.svg/40px-Valued_image_seal.svg.png" /></li>
  <li><img src="http://www.iconico.com/i/icoImageFilterPro100.gif" /></li>
</ul>

<a class="next">next</a>

​ css: CSS:

.myclass {display:none;}


img {height: 20px; width: 20px; position: relative; display: block; margin: 20px; float: left;}
​

javascript: javascript:

$('img', 'ul').on('click', function() {
    $(".myclass").eq($(this).parent('li').index()).show()
                 .siblings('div').hide();
});

$('.selected').show();

$(".next").click(function(){
    var selected = $('.selected');
    selected.removeClass('selected');
    selected.hide();
    
    var next = selected.next(".myclass");
    if(next.length === 0) {
        next = $(".myclass").first();
    }
    next.addClass('selected');
    next.show();
   
});
$('img', 'ul').on('click', function() {
    $(".myclass").eq($(this).parent('li').index()).show()
                 .siblings('div').hide();
});

$('.selected').show();

$(".next").click(function(){
    if ($('.myclass:visible').length) {
        var curr = $('.myclass:visible'),
            next = curr.next('.myclass').length?curr.next('.myclass'):$('.myclass').first();

        curr.hide();
        next.show();
    }else{
        $('.myclass').first().show();
    }
});

FIDDLE

seems you wanted this: 看来您想要这样:

$('img', 'ul').on('click', function() {
    $(".myclass").eq($(this).parent('li').index()).addClass('selected').show()
                 .siblings('div').hide();
});

$('.selected').show();

$(".next").click(function(){
    var selected = $('.selected');
    selected.removeClass('selected');
    selected.hide();
    
    var next = selected.next(".myclass");
    if(next.length === 0) {
        next = $(".myclass").first();
    }
    next.addClass('selected');
    next.show();
   
});

http://jsfiddle.net/namVk/6/ http://jsfiddle.net/namVk/6/

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM