1

リストアイテム内にリストがあります。

       <ul id="selected-list" class="droptrue sort-drop">
            <li class="sortedli" style="">Call list
                <ul id="select-navlist" style="float: right;">
                    <li class="sel-display">xx</li>
                    <li><a href="#">aa</a></li>
                    <li><a href="#">bb</a></li>
                    <li><a href="#">cc</a></li>
                    <li><a href="#">dd</a></li>
                    </ul>
               </li>
          </ul>

jQueryを使用して、クラス名が「del-display」のリストアイテムの色を切り替えて、色をオレンジ色に変更しています。ただし、トグルコードを保存して実行すると、アイテム自体は表示されません。

$(".sel-display").toggle(function () {
            $(this).css("background", "#ffcc00");
            //$(this).css("background-position", "140px 5px");
    });​

私はここでフィドルを作りました:http://jsfiddle.net/noscirre/3fwZn/

どんな助けでも大歓迎です。

4

3 に答える 3

0

最高の解決策ではありませんが、それは何かですか?

http://jsfiddle.net/3fwZn/7/

Javascript:

$(".sel-display").click(function () {
    $(this).toggleClass('del');
});

CSS:

.del {
    background-color: #ffcc00 !important;
}
于 2012-08-24T13:57:32.547 に答える
0

次のような特定のクラス名を持つすべてのリストアイテムを検索する必要があると思います。

$('.sel-display').find('li').hasClass('del-display');

フリーハンドで書いているので、そのコードが正しいかどうかはわかりませんが、それらの線に沿って何かが必要になる可能性があると思います。

于 2012-08-24T13:40:12.197 に答える
0

あなたはそれを次のようにすることができます:

$('.sel-display').click(function(){
    if($(this).hasClass("highlighted")){
        $(this).removeClass("highlighted");
        $(this).css({"background", "#ffffff"});
    }else{
        $(this).addClass("highlighted");
        $(this).css({"background", "#ffcc00"});
    }
});
于 2012-08-24T13:47:04.207 に答える