2012-03-26 9 views
0

各5番目のdivの後に<br clear="all" />を挿入しようとしています。以下は、PHPでdivを作成し、jqueryを使用してそれらを区切る方法です。しかし、それは動作していません!どんな助けでも大歓迎です!前もって感謝します!:n番目の子供がjqueryで作業していません

PHP:

$get = mysql_query("SELECT * FROM Products $cate ") or die(mysql_error()); 
    while($row= mysql_fetch_array($get)){ 
     $pname = $row['Pname']; 
     $image = $row['Pimage']; 
     $id = $row['ID']; 
     ?> 
    <div class="productCat"><a href="product.php?id=<?php echo $id ?>"><img src="../products/<?php echo $image ?>" width="100" height="100" /><br /><?php echo $pname ?></a></div> 

     <?php 
     } 
    ?> 

のjQuery:

$(".productCat :nth-child(5)").append("<br clear='all'/>"); 
+0

clear属性は廃止されましたか? – j08691

答えて

0

あなたの「BR」を...持っていません。

また、PHPで行うのはなぜですか?

$count=0; 
while($row= mysql_fetch_array($get)){ 
    $count++; 
    $pname = $row['Pname']; 
    $image = $row['Pimage']; 
    $id = $row['ID']; 
    ?> 
<div class="productCat"><a href="product.php?id=<?php echo $id ?>"><img src="../products/<?php echo $image ?>" width="100" height="100" /><br /><?php echo $pname ?></a></div> 

    <?php 
    if($count%5==0) 
     echo "<br clear='all'/>"; 
    } 
?> 
+0

ありがとうございました!チャームのように働いた! – liveandream

0

は、クラスセレクタとn番目の子の間にスペースを出す:

$(".productCat:nth-child(5)").append(""); 
0

問題があり、それは、複数の探していることを-0.5 th 子供の.productCatのため、余分なスペース。編集:実際にはnを残しているので、.productCatの5番目の子のみを探しています。

のほかに、何が間違っている:

/* CSS: */ 
.productCat:nth-child(5n+1) {clear: left;} 

このCSSのみのソリューションは、はるかに効率的です。

0

なぜPHPでそれをしないのですか?あなたはjQueryのを使用する場合は、JavaScriptのない人は.productCatの後にスペースがあると想定されていない

<?php 
$get = mysql_query('SELECT * FROM Products '.$cate) or die(mysql_error()); 
$i=0; 
while($row = mysql_fetch_array($get)){ 
    $i++: 
    ?> 
    <div class="productCat"><a href="product.php?id=<?php echo $row['ID']; ?>"><img src="../products/<?php echo $row['Pimage']; ?>" width="100" height="100" /><br /><?php echo $row['Pname']; ?></a></div> 
    <?php 
    if($i == 5){ 
     echo '<br clear="all" />'; 
     $i=0; 
    } 
} 
?>