0

これはとても簡単な質問ですが、私の人生では私の解決策をうまく機能させることができません.

http://jsfiddle.net/N8pCq/292/

すぐにコードに入ります

JQuery:

    $('#_moon_static_bg_status').on('change',function(){ 

       var image_status =$('#test').hasClass('static_preview_image'),
           upload_button = $(".moon_upload_button");

            if (image_status){ 
               upload_button.hide(); 
            } else {
               upload_button.show();
            }

    }).trigger('change');

簡単に言えば、クラス .static_preview_image が存在するかどうかに基づいてアップロード ボタンを表示したいだけです。このクラスには画像が含まれており、ユーザーが画像を閉じると div 全体が削除されるため、そのクラスを呼び出すと表示に適していると考えました。画像が表示されていない場合はアップロードを表示し、画像が表示されている場合はアップロード ボタンを非表示にします。

HTML:

     <div class="moon_media_status" id="_moon_static_bg_status">

     <input type="button" value="Upload File" class="moon_upload_button button"></input>

     <a rel="_moon_static_bg" class="moon_remove_file_button" href="#">Remove Image</a>

     <div id="test" class="static_preview_image"></div>

     </div>

.moon_remove_file_button をクリックすると、その下にある .static_preview_image が完全に削除されます。ユーザーが画像をアップロードすると、.static_preview_image を含む div が戻ってきます。そのため、当然、そのボタンを削除して、閉じるボタンのみを公開する必要があります...

振り返ってみると、オープンソースの jQuery が .moon_remove_file_button を削除してそれをコピーする方法を確認できましたが、これを書いたので、脳のおならの間違いを犯している場所を確認したいと思います...

ここでもフィドルがあります... http://jsfiddle.net/N8pCq/292/

4

2 に答える 2