2016-10-14 6 views
-1

私はCSS上でHTML上のファイルエクスプローラをシミュレートできるスクリプトを用意しています。CSSスクリプトからJqueryを開いてからフォルダを開く

問題は、そのリストのすべてのフォルダとサブフォルダを自動的に開くボタンを作成することです。ここ

li input:checked + ol 
{ 
    background: url('http://www.01800iglesia.org/imagenes/numeros-01.png') 44px 5px no-repeat; 
    background-size: 12px 12px; 
    margin: -1.25em 0 0 -44px; /* 20px */ 
    padding: 1.563em 0 0 80px; 
    height: auto; 
    width: auto; 
} 
li input:checked + ol > li { display: block; margin: 0 0 0.125em; } 
li input:checked + ol > li:last-child { margin: 0 0 0.063em; } 

ライブ例:ここでは

はチェックボックスがクリックされたときに呼び出されているCSSの例である https://jsfiddle.net/qzojy5ko/3/

クリックので、フォルダを開いて取得する方法はありますボタンの?

ありがとうございます。

+0

あなたが提供したJSFiddleは機能していないようですが、基本的にすべてのチェックボックスをチェック/チェックしないように見えるので、これをチェックする価値があります:http://www.stackoverflow.com/questions/ 14966733/check-all-uncheck-all-checkboxes-js –

+0

あなたはそうです、フィドルはうまく機能しませんでした。私は今、新しい作業フィドルを置く。あなたの答えに関しては、ちょうどボックスをチェックするだけでは少し複雑です。より理解を深めるために、フィドルを見てください。 – vashzero

答えて

1

私は実用的なソリューションであなたの手掛かりを更新しました。

https://jsfiddle.net/xgz0z54k/3/

あなたは、クリックイベントに、チェックボックスの値を設定する.prop()を使用することができます。述べたように

jQuery("#my_button").click(function() { 
    $("input").prop("checked", true); 
}); 
+0

ありがとう、それは私が必要としたものです。私は$( '#my_id')attr( 'checked')で試してみましたが、うまくいきませんでした。今私はそれが完璧に動作する小道具でそれを参照してください。もう一度、ありがとう! – vashzero

1

、あなたは基本的にチェックボックスをチェックし、オフにしている:

$(function() { 

    var folder = $('.folder').next('input'); 

    $('#my_button').click(function() { 
     if (folder.filter(':checked').length == folder.length) { 
      folder.prop('checked', false); 
      $(this).val('Open Folders'); 
     } else { 
      folder.prop('checked', true); 
      $(this).val('Close Folders'); 
     } 
    }); 

    folder.change(function() { 
     if (folder.filter(':checked').length == folder.length) { 
      $('#my_button').val('Close Folders'); 
     } else { 
      $('#my_button').val('Open Folders'); 
     } 
    }); 

}); 

代わり$('.folder').next('input')の理想的には、あなたがチェックボックス自身にクラスを追加したい、と$('input-class')にそれを変更します。

関連する問題