1

私は、私よりも高度な開発者から渡されたものに取り組んできました。(彼はつづりが苦手ですが)。私がやろうとしているのは、メインカテゴリをクリックすると、その下のリストが非表示または表示されるようにすることです。しかし、最初は隠されています。

彼のコードでは、それらすべてがボックス全体に表示され、クリックすると非表示になり、表示されます。つまり、これはボックス内のカテゴリのリストです。それが理にかなっている場合。(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.'>&nbsp;'.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ビットの前に配置して、出力で閉じる必要があると思います。

しかし、実際の隠し/表示ビットが表示されたり消えたりするようにするには、どうすればよいかについて少し戸惑っています。

これは意味がありますか?うまくいけば、私は理にかなっています。誰かが私を指示することができれば、私は本当に助けていただければ幸いです。私はいつも学んでいます!:)よろしくお願いします。

4

0 に答える 0