1

closest()( http://api.jquery.com/closest/ )を使用して、タグ名で最も近い一致する要素を見つけることに成功しました。基本的に DOM ツリーをたどり、要素 (見つかった場合) または false を返します。

if(jQuery(".current_element").closest("p").length){ do something... }
//if above is TRUE then .current_element is nested within at least 1 "p"

ここで、いずれかのタグ(または要素に最も近いもの - 有効になるもの) がstyle="text-align:center;"適用された場合にのみ TRUE を返そうとしています。それ、どうやったら出来るの?

4

4 に答える 4

1

それはうまくいくはずです:

if(jQuery(".current_element").closest("p").length && jQuery(".current_element").closest("p").css("text-align") == "center" ){
  do something...
}
于 2012-08-27T13:36:06.153 に答える
1

「text-align: center」が実際にインライン スタイルであることが確実な場合は、closest() を呼び出すときにセレクターに直接追加できます。次に例を示します。

jQuery(".current_element").closest("p[style*='text-align:center']") ...

これにより、スタイル属性内の任意の場所に「text-align:center」を含む祖先の p 要素が見つかります。

于 2012-08-27T13:37:44.707 に答える
0

ベスト プラクティスは、text-align: center;簡単に選択できるよりも、クラスによって適用されることです。

それ以外の場合は、基本的な文字列検索を実行できますが、これが機能するには、正確な文字列である必要があります。

if ($('.current').closest('p').attr('style')=='text-align:center;')){ ... }
于 2012-08-27T13:36:54.677 に答える
0
jQuery('.curr').closest("[style*='text-align:center']").length ... 
于 2012-08-27T13:37:00.913 に答える