0

次のulにクラスを追加するにはどうすればよいですか。

$("#main-navigation a:contains('About')").after("<span id=mabout></span>");
$("#mabout").closest('ul').addClass('moveme');


There are more list elements before and after...

<li ><a href="">About</a>

<a class='menu-icon plus' href='#'><img src=''/></a>

<ul> <<-- ONLY THIS

    <li ><a href="">Lower</a>

<a class='menu-icon plus' href='#'><img src=''/></a>

<ul>

だから私は次の UL にクラスを追加することだけを考えています、ありがとう。

4

2 に答える 2

1

使用する

$('li > ul').addClass('moveme');

ul以下のコードのようにnext をターゲットにすることもできます。

$('li ul:first').addClass('moveme');

また

$('li').find('ul:first').addClass('moveme');
于 2013-09-10T09:15:29.950 に答える
1

最初のステップは、マークアップをクリーンアップすることです。いくつかの終了タグが欠落しています。

<li id="mabout">
    <a href="">About</a>
    <a class='menu-icon plus' href='#'><img src=''/></a>
</li>
<ul> <<-- ONLY THIS
    <li >
        <a href="">Lower</a>
        <a class='menu-icon plus' href='#'><img src=''/></a>
    </li>
<ul>

マークアップで、最初liに id が指定されていたことに注意してくださいmabout。これは欠落していました。これにより、次のスクリプトが機能するようになります。

$("#mabout").next('ul').addClass('moveme');

JS フィドル: http://jsfiddle.net/g3KYW/

于 2013-09-10T09:18:34.230 に答える