0

私は基本的に a<ul>と 5のサイトを持っています<li>。jQuery bxSlider を使用して左右にスライドさせましたが、一方のコンテンツ<li>が非常に長いため、コンテンツがもう一つ<li>はイメージです。だから私はjQueryを使って高さを変更したかった(強制的に):

if($('#slider1:nth-child(0)').is(':visible'))
            alert("1"); 
        else if($('#slider1:nth-child(1)').is(':visible'))
            alert("2");

しかし、現在テスト中は、最後の子であっても常に2番目のアラートを受け取ります。私が間違っていること、またはこれをどのように達成できるか考えていますか? 私のHTMLはとてもシンプルです:

<ul id="slider1" style="border=100px;">
          <li>
            <div id="menu" class="nivoSlider">
                <img src="picsHOME/home0.jpg" alt="" />
                <img src="picsHOME/home1.jpg" alt="" />
                <img src="picsHOME/home2.jpg" alt="" />
                <img src="picsHOME/home4.jpg" alt="" />
                <img src="picsHOME/home5.jpg" alt="" />
                <img src="picsHOME/home6.jpg" alt="" />
                <img src="picsHOME/home7.jpg" alt="" />
                <img src="picsHOME/home8.jpg" alt="" />
            </div>
          </li>
          <li>
            <div id="nosotros">
                <img src="nosotros.jpg" alt="" /> <p>
                <img src="NOSOTROS-MISION.jpg" alt="" /><p>
                <img src="FOTOS-NOMBRES.jpg" alt=""  />

            </div>
          </li>
          <li>
            <div id="servicios">
                <img src="servicios.jpg" alt="" />
                <img src="SERVICIOStest.jpg" alt="" />
            </div>
          </li>
          <li>
          <img src="portafolio2.jpg" /><p>
          <a href="http://issuu.com/citro_ids/docs/citro_ids_portafolio_2012?mode=window&backgroundColor=%23222222" />
          <img src="port_link.png" /> <p></a>
          <img src="VERSION-DESCARGABLE2.jpg" />
          </li>
     </ul>
4

1 に答える 1

0

jQueryドキュメントから直接:

jQueryの:nth-​​child(n)の実装はCSS仕様から厳密に派生しているため、nの値は「1-indexed」です。つまり、カウントは1から始まります。

http://api.jquery.com/nth-child-selector/

あなたはから始めるべきです:nth-child(1)

0ベースのアプローチを使用する場合:

if($('#slider1 li:eq(0)').is(':visible'))
        alert("1"); 
    else if($('#slider1:eq(1)').is(':visible'))
        alert("2");

:eqそれぞれ1と2番目のliを与えます。

于 2012-05-31T03:41:39.353 に答える