0

以下のコードを使用しています。私は2つの画像を持っています。プラスとマイナス。プラスをクリックすると、画像がマイナスに変わります。しかし、ここではイメージは変わりません。

 <script type="text/javascript">
    $(document).ready(function () {
    $("#plus").click(function () {
        if ($('#divreg').is(":hidden")) {
            $('#divreg').show(500);
            document.getElementById('plus').src = "~/Styles/min.jpg";
        } else {
            $("#divreg").hide(500);
            document.getElementById('plus').src = "~/Styles/plus.jpg";
        }
    });
});

4

2 に答える 2

2

JSFiddle などを介して html を表示しないと、問題が 1 つあります。サーバーの URL を次のように使用しています。

~/Styles/min.jpg

これは、JQuery ではなく ASP.NET ランタイムによって解析されるため、イメージ パスが正しくありません。このパスを変更してテストし、これが機能するかどうかを確認します。そうでない場合は、他のエラーがあるため、JSFiddle でテスト ケースを作成して、さらにヘルプを得る必要があります。

于 2013-05-21T08:29:49.390 に答える
0

ここに私のフィドルがありますhttp://jsfiddle.net/ponrajpaul/BwGTn/

このようにあなたのhtmlを作ります

<div id="plus">
    <a class="plus minus"></a>    
</div>

あなたのCSSをこのようにしてください

#plus a{display:block; width:128px; height:128px;}
#plus .plus{background: url("http://icons.iconarchive.com/icons/gakuseisean/ivista-2/128/Alarm-Plus-icon.png") no-repeat;}
#plus .minus{display:block; background:url("http://icons.iconarchive.com/icons/iconarchive/red-orb-alphabet/128/Math-minus-icon.png") no-repeat;}

このようにスクリプトを作成します

$(document).ready(function () {
    $("#plus a").click(function () {
        if ($(this).hasClass('minus')){  
            $(this).removeClass("minus");              
        }else{
            $(this).addClass("minus");              
        }
    });
});
于 2013-05-21T09:33:44.590 に答える