私は、私よりも高度な開発者から渡されたものに取り組んできました。(彼はつづりが苦手ですが)。私がやろうとしているのは、メインカテゴリをクリックすると、その下のリストが非表示または表示されるようにすることです。しかし、最初は隠されています。
彼のコードでは、それらすべてがボックス全体に表示され、クリックすると非表示になり、表示されます。つまり、これはボックス内のカテゴリのリストです。それが理にかなっている場合。(yipit.comの左側のボックスに少し似ています。ヘッダーをクリックすると、その下のリンクが表示/非表示になります)。これが彼のコードです:
<!-- Box2 -->
<div class="clsBox clsTags" id="catgories_list">
<!-- Box Title -->
<div class="clsBox_Tiitt">
<a href="javascript:void(0)">Categories</a>
</div>
<!-- End of Box Title -->
<!-- Box content -->
<div class="clsBox_Cont">
<p class="clsBoxoption"><a href="javascript:void(0)" id="sel_my_tags">My Tags</a> | <a href="javascript:void(0)" id="clear_all_tag">Clear</a> | <a id="save_tags" href="javascript:void(0)">Save</a></p>
<a href="javascript:void(0)" id="sel_all_tags" style="color:#fff; font-size:16px; font-weight:bold;">Select All</a>
<?php
if(isset($users_category))
{
$mytags=implode(",",$users_category);
echo '<input type="hidden" name="my_tags" value="'.$mytags.'" id="my_tags"/>';
}
$sub_cat_query='';
$sub_cats=array();
$sub_categories=array();
$conditions=array();
$output="";
$checked='';
if(isset($categories))
{
foreach($categories as $category)
{
$output.='<div class="clsTags_Cont">
<h3>'.ucfirst($category->name).'</h3>
<ul id="sub_cat_of_'.$category->id.'">';
$conditions=array("parent_id"=>$category->id,"status"=>'1');
$sub_cat_query=$this->common_model->getTableData("sub_category",$conditions);
$sub_categories=$sub_cat_query->result();
foreach($sub_categories as $sub_category)
{
if(count($users_category)!=0)
{
if(in_array($sub_category->id,$users_category))
$checked='checked="checked"';
else
$checked='';
}
else
$checked='';
$output.='<li><label><input type="checkbox" id="check_box_cat'.$category->id.'_'.$sub_category->id.'" name="check_box_cat[]" value="'.$sub_category->id.'" '.$checked.'> '.ucfirst($sub_category->name).'</label></li>';
}
$output.="<div class='clear'></div></ul></div>";
}
}
echo $output;
?>
</div>
<!-- box Content -->
</div>
<!-- End of Box2 -->
そして、彼がその移行に使用しているコードは次のとおりだと思います。
$(".clsBox .clsBox_Tiitt").click(function(){
var cur_id=$(this).parent().attr("id");
$("#"+cur_id+" .clsBox_Cont").toggle();
var class_name=$("#"+cur_id+" .clsBox_Tiitt").attr("class");
if(class_name=="clsBox_Tiitt")
$("#"+cur_id+" .clsBox_Tiitt").addClass("clsClsoe");
else
$("#"+cur_id+" .clsBox_Tiitt").removeClass("clsClsoe");
})
しかし、ええと、私はそれをどのように移行するのかわかりません。私が調整する必要があることを私が知っているビットは
$output.='<div class="clsTags_Cont">
<h3>'.ucfirst($category->name).'</h3>
<ul id="sub_cat_of_'.$category->id.'">';
特別なdivを前面に配置し、内部divクラスをulビットの前に配置して、出力で閉じる必要があると思います。
しかし、実際の隠し/表示ビットが表示されたり消えたりするようにするには、どうすればよいかについて少し戸惑っています。
これは意味がありますか?うまくいけば、私は理にかなっています。誰かが私を指示することができれば、私は本当に助けていただければ幸いです。私はいつも学んでいます!:)よろしくお願いします。