3

私がやりたいのは、特定のURLを持つ特定の要素にクラスを追加することです。しかし、私はそれを機能させることができないようです。

これは私が持っているものです。

var pageName = window.location.pathname
    pageName = pageName.replace("/", "");

$("div.mainleftmenu a.rtsLink.rtsRoot[href=pageName]").addclass("rtsSelected");

それが役立つ場合、a.rtsLink.rtsRootは階層へのいくつかのステップです。jQueryは初めてです。

アップデート

迅速な対応に感謝しますが、それでもエラーが発生します。

TypeError:オブジェクト[オブジェクトオブジェクト]にはメソッド'addclass'がありません[ http:// XXXXXXX / training-events:69]

これが私がトラバースしようとしているマークアップのサンプルです。(これは自動生成されるため、htmlを変更することはできません。)

<div class="mainleftmenu">                       
    <div id="mainleftmenu_T76A8AA8B013">
        <div id="ctl00_mainleftmenu_T76A8AA8B013_ctl00_ctl00_siteMapControl_verticalsimple"
        class="RadTabStripVertical RadTabStrip_mainleftmenu RadTabStripLeft_mainleftmenu">
            <div class="rtsLevel rtsLevel1">
                <ul class="rtsUL">
                    <li class="rtsLI rtsFirst">
                        <a class="rtsLink rtsRoot" href="products">
                            <span class="rtsOut">
                                <span class="rtsIn">
                                    <span class="rtsTxt">Products</span>
                                </span>
                            </span>
                        </a>
                    </li>
                    <li class="rtsLI">
                        <a class="rtsLink" href="products/heavybid">
                            <span class="rtsOut">
                                 <span class="rtsIn">
                                    <span class="rtsTxt">HeavyBid</span>
                                </span>
                             </span>
                         </a>
                   </li>
                </ul>
             </div>
         </div>
    </div>
 </div>
4

2 に答える 2

3

変数をセレクターに渡す必要があります。現在、文字列を渡しています。

$("div.mainleftmenu a.rtsLink.rtsRoot[href='"+pageName+"']").addClass("rtsSelected");

addclassまた、あなたが書いたはずのことにも注意してくださいaddClass

于 2012-08-06T21:54:07.603 に答える
1

これにより、文字列を使用しないようになりますpageNameが、次の値を使用しますpageName

$("div.mainleftmenu a.rtsLink.rtsRoot[href='"+pageName+"']")
                                               .addClass("rtsSelected");
于 2012-08-06T21:52:54.737 に答える