0

短い質問: JS/jquery を使用して、クラス名を指定して some 内の要素のインデックスを返すにはどうすればよいですか?

長い質問: 私はこの問題に数時間取り組んできましたが、解決策が見つからないようです。スーパーフィッシュとラバランプjqueryを利用するテーマを使用するWordpressサイトがあります。lavalamp はカテゴリとページでは正常に機能しますが、単一の投稿の場合、lavalamp はリストの最初の項目に移動し続けます。

私がいくつかの深刻なグーグル検索を行ったことは注目に値しますが、答えが古すぎるか、私の場合はうまくいきません。私は jQuery 1.7.1、lavaLamp 1.3.3 (1.3.5 に更新するとすべてが壊れます)、および superfish 1.4.8 を持っています。

lavaLamp プラグインを呼び出すスクリプトが、単一の投稿の現在のカテゴリの正しいインデックスを返していないことを突き止めました。外観は次のとおりです。

var active_subpage = jQuery('ul.sf-menu ul li.current-cat, ul.sf-menu ul li.current_page_item').parents('li.top-level').prevAll().length;
var isHome = <?php if (is_front_page() || is_home()) echo('1'); else echo('0'); ?>; 

if (active_subpage) jQuery('ul.sf-menu').lavaLamp({ startItem: active_subpage });
else if (isHome === 1) jQuery('ul.sf-menu').lavaLamp({ startItem: 0 });
else jQuery('ul.sf-menu').lavaLamp();

その投稿の「current-cat」のインデックスを返すようにスクリプトを変更するにはどうすればよいですか?

ここに必要なものを貼り付けましライブサイトはこちらからご覧いただけます。

事前にどうもありがとうございました!

4

1 に答える 1

1

active_subpageクエリは、サブメニューから選択可能な要素に対してのみ機能します。最初のセレクターは、実際にはトップメニューである場合に、サブメニューで.current-catを検索するため、何にも一致しないようです。active_pageクエリの最初のセレクターで
2番目を削除すると機能すると思います。編集:私は問題を見ます、それは私たちが探しているものです。2つのクエリを分離する必要がある場合があります。または、最初のセレクターを変更して子孫()を含め、一致するようにします<ul>

li.current-catparents('li.top-level')

<a>parents('li.top-level')

于 2012-04-27T18:53:20.047 に答える