2016-09-22 87 views
2

我想創建一個照片slider.everything工作正常,當我硬編碼it.but但當我嘗試從數據庫滑塊的值不查看正確way.please有一看,並給我一個solution.problem是有兩個類稱爲項目活動和item.so我不能申請每個循環。有問題如何在bootstrap中爲不同的div類分配php變量?

<div class="container"> 

         <!--The main div for carousel--> 
         <div class="container text-center"> 
          <div class="carousel slide row" data-ride="carousel" data-type="multi" data-interval="2000" id="fruitscarousel"> 
           <?php foreach($this->data['image_results']->result() as $image_result):?><?php echo $image_result->Url;?> 
           <div class="carousel-inner"> 

             <div class="item active"> 
              <div class="col-md-3 col-sm-4 col-xs-12"> 
               <a class="item active" href="Counting?img_id=<?php echo $image_result->ImgId;?>&href=<?php echo $image_result->Url;?>"><img class="img-responsive" src="<?php echo $image_result->ImgPath; ?>"></a> 
              </div> 
             </div> 

             <div class="item"> 
              <div class="col-md-3 col-sm-4 col-xs-12"> 
               <a href="Counting?img_id=<?php echo $image_result->ImgId;?>&href=<?php echo $image_result->Url;?>"><img class="img-responsive" src="<?php echo $image_result->ImgPath; ?>"></a> 
              </div> 
             </div> 
           </div> 
           <?php endforeach; ?> 
           <a class="left carousel-control" href="#fruitscarousel" data-slide="prev"><i class="glyphicon glyphicon-chevron-left"></i></a> 
           <a class="right carousel-control" href="#fruitscarousel" data-slide="next"><i class="glyphicon glyphicon-chevron-right"></i></a> 

          </div> 
         </div> 

        </div> 

代碼

代碼工作正常

<div class="container"> 
    <h1>Bootstrap Multiple image sliding demo</h1> 
    <!--The main div for carousel--> 
    <div class="container text-center"> 
     <div class="carousel slide row" data-ride="carousel" data-type="multi" data-interval="2000" id="fruitscarousel"> 

      <div class="carousel-inner"> 
       <div class="item active"> 
        <div class="col-md-3 col-sm-4 col-xs-12"><a href="#"><img src="images/1.jpg" class="img-responsive"></a></div> 
       </div> 
       <div class="item"> 
        <div class="col-md-3 col-sm-4 col-xs-12"><a href="#"><img src="images/2.jpg" class="img-responsive"></a></div> 
       </div> 
       <div class="item"> 
        <div class="col-md-3 col-sm-4 col-xs-12"><a href="#"><img src="images/2.jpg" class="img-responsive"></a></div> 
       </div> 
       <div class="item"> 
        <div class="col-md-3 col-sm-4 col-xs-12"><a href="#"><img src="images/3.jpg" class="img-responsive"></a></div> 
       </div> 
       <div class="item"> 
        <div class="col-md-3 col-sm-4 col-xs-12"><a href="#"><img src="images/4.jpg" class="img-responsive"></a></div> 
       </div> 
       <div class="item"> 
        <div class="col-md-3 col-sm-4 col-xs-12"><a href="#"><img src="images/5.jpg" class="img-responsive"></a></div> 
       </div> 
      </div> 

      <a class="left carousel-control" href="#fruitscarousel" data-slide="prev"><i class="glyphicon glyphicon-chevron-left"></i></a> 
      <a class="right carousel-control" href="#fruitscarousel" data-slide="next"><i class="glyphicon glyphicon-chevron-right"></i></a> 

     </div> 
    </div> 


</div> 

jQuery和風格

<script> 
     jQuery(document).ready(function() { 

      jQuery('.carousel[data-type="multi"] .item').each(function(){ 
       var next = jQuery(this).next(); 
       if (!next.length) { 
        next = jQuery(this).siblings(':first'); 
       } 
       next.children(':first-child').clone().appendTo(jQuery(this)); 

       for (var i=0;i<2;i++) { 
        next=next.next(); 
        if (!next.length) { 
         next = jQuery(this).siblings(':first'); 
        } 
        next.children(':first-child').clone().appendTo($(this)); 
       } 
      }); 

     }); 
    </script> 
<style> 
    .carousel-control.left, .carousel-control.right { 
     background-image:none; 
    } 

    .img-responsive{ 
     width:100%; 
     height:auto; 
    } 

    @media (min-width: 992px) { 
     .carousel-inner .active.left { 
      left: -25%; 
     } 
     .carousel-inner .next { 
      left: 25%; 
     } 
     .carousel-inner .prev { 
      left: -25%; 
     } 
    } 

    @media (min-width: 768px) and (max-width: 991px) { 
     .carousel-inner .active.left { 
      left: -33.3%; 
     } 
     .carousel-inner .next { 
      left: 33.3%; 
     } 
     .carousel-inner .prev { 
      left: -33.3%; 
     } 
     .active > div:first-child { 
      display:block; 
     } 
     .active > div:first-child + div { 
      display:block; 
     } 
     .active > div:last-child { 
      display:none; 
     } 
    } 

    @media (max-width: 767px) { 
     .carousel-inner .active.left { 
      left: -100%; 
     } 
     .carousel-inner .next { 
      left: 100%; 
     } 
     .carousel-inner .prev { 
      left: -100%; 
     } 
     .active > div { 
      display:none; 
     } 
     .active > div:first-child { 
      display:block; 
     } 
    } 
</style> 

PHP代碼

$imagefromdatabse_query="SELECT * FROM Advertisements WHERE Active='1' ORDER BY ImgId DESC"; 
     $this->data['image_results']=$this->db->query($imagefromdatabse_query); 

回答

1

做你的旋轉木馬內循環:做一個,如果選擇第一個圖像爲活動添加活性類

<div class="container"> 
    <!--The main div for carousel--> 
    <div class="container text-center"> 
     <div class="carousel slide row" data-ride="carousel" data-type="multi" data-interval="2000" id="fruitscarousel"> 

      <div class="carousel-inner"> 
       <?php foreach($this->data['image_results']->result() as $key => $image_result):?><?php echo $image_result->Url;?> 
        <div class="item <?php if($key == 0) {echo 'active';}?>"> 
         <div class="col-md-3 col-sm-4 col-xs-12"> 
          <a href="Counting?img_id=<?php echo $image_result->ImgId;?>&href=<?php echo $image_result->Url;?>"><img class="img-responsive" src="<?php echo $image_result->ImgPath; ?>"></a> 
         </div> 
        </div> 
        <?php endforeach; ?> 
      </div> 

      <a class="left carousel-control" href="#fruitscarousel" data-slide="prev"><i class="glyphicon glyphicon-chevron-left"></i></a> 
      <a class="right carousel-control" href="#fruitscarousel" data-slide="next"><i class="glyphicon glyphicon-chevron-right"></i></a> 

     </div> 
    </div> 

</div> 
+0

它給我語法錯誤意外回聲T_echo,我想知道會發生什麼樣的div class =「item active」?有兩個類別項目活動和項目。 – colombo

+0

是的,有2個類'item'和'active' – madalinivascu

+0

更新了我的回答 – madalinivascu

1

我想你只需要給活動類的第一個項目,所以在 - 每個循環你可以給這個類激活如下。

在for-each-first-index將是0,然後應用活動類。

<div class="carousel-inner"> 
    <?php foreach($this->data['image_results']->result() as $key => $image_result):?> 
     <?php echo $image_result->Url;?> 
     <div class="item <?php if($key == 0) { echo 'active'; } ?>"> 
      <div class="col-md-3 col-sm-4 col-xs-12"> 
       <a href="Counting?img_id=<?php echo $image_result->ImgId;?>&href=<?php echo $image_result->Url;?>"> 
        <img class="img-responsive" src="<?php echo $image_result->ImgPath; ?>"> 
       </a> 
      </div> 
     </div> 
    <?php endforeach; ?> 
</div>