0

我在这里有一个应用程序,我在基本 jquery 滑块中使用 jwplayer:应用程序

此处基本 jquery 滑块的信息:http: //basic-slider.com/

现在这就是我发现的,如果一个滑块包含多个视频,那么它会显示滑块,但如果一个滑块只有一个视频,它不会显示视频或滑块。

现在奇怪的是,如果我将视频替换为图像,那么如果我只有一个图像,它就可以工作,因为它不显示滑块而是显示图像,这很好。但我的问题是如何为视频做同样的事情?

这是带有图像的滑块的演示:应用

以下是视频和滑块的代码:

     $vidquery = "SELECT s.SessionId, q.QuestionId, v.VideoId, VideoFile
                FROM Session s
                INNER JOIN Question q ON s.SessionId = q.SessionId
                INNER JOIN Video_Question vq ON q.QuestionId = vq.QuestionId
                INNER JOIN Video v ON vq.VideoId = v.VideoId
                WHERE s.SessionId = ?";

    $vidqrystmt=$mysqli->prepare($vidquery);
    // You only need to call bind_param once
    $vidqrystmt->bind_param("i",$session);
    // get result and assign variables (prefix with db)
    $vidqrystmt->execute(); 
    $vidqrystmt->bind_result($vidSessionId,$vidQuestionId,$vidVideoId,$vidVideoFile);

        $arrVideoFile = array();

    while ($vidqrystmt->fetch()) {
    $arrVideoFile[ $vidQuestionId ][] = basename($vidVideoFile);
  }

    $vidqrystmt->close(); 


?>
<form action='results.php' method='post' id='exam'>


<?php
                //start:procedure video
        $vid_result = '';
        if(empty($arrVideoFile[$key])){
          $vid_result = '&nbsp;';
        }else{

            ?>


 <div id="banner-video_<?php echo $key; ?>">
 <ul class="bjqs">
<?php
$i = 0;
foreach ($arrVideoFile[$key] as $v) { ?>
<li><div id="myElement-<?php echo $key.'-'.$i; ?>">Loading the player...

<script type="text/javascript">


jwplayer("myElement-<?php echo $key.'-'.$i; ?>").setup({
    file: "<?php echo 'VideoFiles/'.$v; ?>",
    width: 480,
    height: 270
});

<?php $i++; ?>
</script>

</div>
</li>
<?php } ?>
</ul>
</div>

         <script type="text/javascript">

jQuery(document).ready(function($) {

         $('#banner-video_<?php echo $key; ?>').bjqs({
            animtype      : 'slide',
            height        : 300,
            width         : 700,
            responsive    : true,
            randomstart   : false,
            automatic : false
          });  
          });

          </script>

<?php

        }
        //end:procedure video
?>

</div>



</form>

更新:

如果有人知道如何对其进行编码,以便如果它能够检测到单个视频,那么不要将它放在滑块中,那么我相信这可以解决它。

4

1 回答 1

1

我要说的是,通过您的示例,看起来您的所有滑块都将图像或视频滑过并显示下一个或上一个,但是如果您只有一个项目,为什么不完全跳过所有这些。

你有一个数组:$arrVideoFile

您可以使用count($arrVideoFile);来获取数组中的总值。

所以

if(count($arrVideoFile) != 0 || $arrVideoFile) != 1)
{
    //do the stuff you pasted above
}

else
{
    //if(array == 0) maybe show a default image

    //if(array == 1) lets just show that
        //if image show <img> if video show <object> or in your case 
        //<div id="myElement-<?php echo $key.'-0'; ?>"></div>
}

让我知道这是否有帮助

于 2013-02-12T07:17:43.737 回答