1

http://jsfiddle.net/hNpmc/

この小さな問題について助けが必要です。たとえば、アップルに投票した場合、アップルの後のすべてのリンクを無効にしたい場合、このスクリプトは何とか機能しますが、希望どおりには機能しませんが、まだjQueryを学んでいるので、私はそれについて十分な経験がありません

<script type="text/javascript">

    $(document).ready(function() {

        $("#container .bar a").click(function() {

            var target = $(this);

            target.html('Voted').addClass('voted');

            //$('span a').removeAttr('href'); // this doese not help



            return false;
        });
});

</script>




<div id="container"> 


<span id="question">What is your favorite</span>



 <div class="bar"><span> 10% </span><span><a class="a" href="">Vote</a></span> apple</div>
 <div class="bar"><span> 20% </span><span><a class="a" href="">Vote</a></span> banana</div>
 <div class="bar"><span> 30% </span><span><a class="a" href="">Vote</a></span> lemon</div>


</div><!--end container-->
4

2 に答える 2

2

それはあなたが望むものですか?

    $(document).ready(function() {

        $("#container .bar a").click(function() {

            var target = $(this);

            // disabling all next a links
            var allNext = target.parents('.bar').nextAll().css("opacity",0.5);                                                                
            allNext.find("a").removeAttr("href").off("click mouseover mouseenter");                                

            $(this).addClass('voted').html('Voted');                
            $(this).removeAttr('href');                        

            return false;
        });
});

ここで働くフィドル:http://jsfiddle.net/hNpmc/4/

于 2013-09-16T08:30:44.343 に答える
0

すべてのリンクを無効にして、クリックされたリンクのみに「投票済み」テキスト<a>を表示するには、コードを次のように変更します。

$(document).ready(function () {
    $("#container .bar a").click(function () {
        var target = $("#container .bar a");
        $(this).html('Voted').addClass('voted');
        target.removeAttr('href').off('click');
        return false;
    });
});

$(this)<a>はクリックされた を指しているため、テキストの変更はそれに対してのみ行われます。は、そのような要素がtarget = $("#container .bar a");すべて選択されていることを意味し、それらすべてのイベントを無効にします。<a>off('click')click

デモリンク

于 2013-09-16T08:16:46.343 に答える