簡體   English   中英

Jquery nth-child fadeIn

[英]Jquery nth-child fadeIn

我有javascript和HTML的問題。 如果文本輸入的值錯誤,我想彈出一條消息。

    $('input[name="login"]').blur(function() {
    $('.error:nth-child(2)').fadeIn('fast', function() {

    });
});

和HTML / PHP代碼:

    echo "<div class=\"grid_2 alpha\">Nazwa użytkownika</div><div class=\"grid_2 omega register\">".form_input('login', set_value('login', ''))."</div>";
    echo "<div class=\"error grid_4\">Niepoprawna nazwa użytkownika.</div>";

我無法實現的是實際上淡出這個小div。 什么都沒發生。 這段代碼有什么問題?

當我不使用時,一切都有效:nth-​​child()。

沒有看到更多代碼就很難確定,但我感覺你所追求的是:

$(".error").eq(2).fadeIn("fast", function() {
    //Done!
});

eq只匹配指定選擇器的元素,而nth-child將查看所有兄弟姐妹。 因此,上面的代碼將選擇匹配.error的第二個元素。 如果您願意,也可以使用:eq偽選擇器:

$(".error:eq(2)").fadeIn("fast", function() {});

eqnth-child之間的區別是混淆的常見原因。 jQuery文檔幫助清除它:

:nth-​​child(n)偽類很容易與:eq(n)混淆,即使這兩者可能導致顯着不同的匹配元素。 使用:nth-​​child(n),所有子節點都被計數,無論它們是什么,只有在與附加到偽類的選擇器匹配時才選擇指定的元素。 使用:eq(n)僅計算附加到偽類的選擇器,不限於任何其他元素的子節點,並且選擇第(n + 1)個(n為0)。

當然,我可能完全錯了,當你發布更多代碼時,我可能不得不刪除這個答案!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM