私は現在メニューを作っています。メニューはエッジの周りに光がある奇妙な形なので、オーバーラップ上の不要な輝きを隠すために空白のブロックを上に置く必要があります。私はこれを使用して作成しています:メニューのliタグの後のセレクタとコードがうまくいきます。Jquery using:after selector
私の問題は、表示属性を切り替えることで、メニュー項目の一部または全部に一度に適用できるだけですが、私が望むのは:afterセレクタを現在のリスト項目にのみ適用することです。
各リスト項目には一意のIDがありますが、jquery内の特定のリスト項目で:afterセレクタを使用する方法を考えることができません。
ご協力いただきありがとうございます。これが不明な場合は申し訳ありません。
リスト項目#menu li{
float:left;
margin:0 20px 0 0;
height:87px;
z-index:1;
position:relative;
background: #f8f8f8;
cursor:pointer;
border:1px solid #CCC;
border-bottom:none;
}
#menu li:after{
display:none;
content: '';
position: absolute;
top: 0;
bottom: -5px;
left: 0;
width: 291px;
height:10px;
margin-top:109px;
background: #f8f8f8;
}
ため
HTMLコード
<ul id="menu">
<li id="0">link 1</li>
<li id="1">link 2</li>
<li id="2">link 3</li>
</ul>
CSS私はそれが
$$('li[id="0"]:after').show();
または多分
$$('li[id="1"]:after').css("display" : "block");
のようなものを置くのと同じくらい簡単だろうと思いました
しかし、これらは機能しません。
CSSは '持って、次の:[あなたがターゲットにすることはできませんhttp://api.jquery.com/category/selectors/ – Blazemonger
:after'セレクタが、jQueryのにはありません擬似要素はjQueryを使用しています。](http://stackoverflow.com/questions/5041494/manipulating-css-pseudo-elements-using-jquery) – BoltClock
擬似要素はDOMの一部ではないため、jQueryは検索できませんそれら。 –