Question

I have a kiosk that I'm preparing for a conference that uses a 27 inch iMac, OSX Lion. The browser is Chrome. I'm using a lightbox to display quicktime videos. The Lightbox I"m using is fancybox.

When a video appears in the lightbox, I've programmed the lightbox to be "full screen", which is the size of the monitor. But the QUICKTIME content is not fullscreen, it's just a window inside of a very large white lightbox.

When I right click the video, there is a FULLSCREEN option that gives me exactly what I want: the QuickTime content goes full screen, filling up the entire 27 inch Mac screen and it looks beautiful.

What I need is for the video to open fullscreen automatically without having to right click it, since this is for a conference and the users can't keep right clicking videos to make them work right.

Here is my code:

<div id="videocontainerone" style="display:none; position:relative; top:0px;">
<object width="2560" height="1240">
<param name="movie" 
fullscreen="full"
quitwhendone="true"
value="videos/one.mov">
</param>
<param name="allowFullScreen" value="true"></param>
<param name="allowscriptaccess" value="always">       </param>
<embed 
src="videos/one.mov" 
fullscreen="full"
quitwhendone="true"
allowscriptaccess="always" allowfullscreen="true" width="2560" height="1240">
</embed>
</object>
</div>

The lightbox is opened by js, but my hunch is that what I need is actually tweaking the quicktime settings and/or embed options. But the js to open the video is simple: in a document.ready I just do :

$(".fancybox").fancybox({
   frameWidth: 2560, 
   frameHeight: 1240,
   overlayShow: true,
   overlayOpacity: 0.7 
});

Any help would be appreciated ! Thank you in advance.

EDIT: I have tried to create an .htaccess file and a .qtl file , as instructed in this 2006 article: http://www.kenvillines.com/archives/82.html and it DOES pull up the movie but still no automatic fullscreen. Anyone who answers this will get a beer !
Thanks.

Was it helpful?

Solution

So I found the answer. In a nutshell:

Works by putting target videos in display:none divs and using an href to link to #videoone , #videotwo, etc for the various videos, and doing that with the fancybox plugin.

I changed the video format to HTML5 since its running inside of a kiosk.

For the fullscreen effect, I'm using element.webkitRequestFullScreen(); on the html5 video element itself, which still uses the fancybox but puts it fullscreen ( and I mean the VIDEO ITSELF is fullscreen, which is what I wanted ).

I'm posting the code of the entire page here : ( I hope I get the indentation right , I usually don't post THIS much code, but it's useful. ) .... Hopefully this will help someone.

<!doctype html>
<html>
<head>
<link rel=stylesheet href="style.css" type="text/css" media=screen>

    <!-- Add jQuery library -->
<script type="text/javascript" src="javascript/jquery.min.js"></script>

<!-- Add mousewheel plugin (this is optional) -->
<script type="text/javascript" src="fancybox/lib/jquery.mousewheel-3.0.6.pack.js">      </script>

<!-- Add fancyBox -->
<link rel="stylesheet" href="fancybox/source/jquery.fancybox.css?v=2.1.1" type="text/css" media="screen" />
<script type="text/javascript" src="fancybox/source/jquery.fancybox.pack.js?v=2.1.1"></script>

<!-- Optionally add helpers - button, thumbnail and/or media -->
<link rel="stylesheet" href="fancybox/source/helpers/jquery.fancybox-buttons.css?v=1.0.4" type="text/css" media="screen" />
<script type="text/javascript" src="fancybox/source/helpers/jquery.fancybox-buttons.js?v=1.0.4"></script>
<script type="text/javascript" src="fancybox/source/helpers/jquery.fancybox-media.js?v=1.0.4"></script>

<link rel="stylesheet" href="fancybox/source/helpers/jquery.fancybox-thumbs.css?v=1.0.7" type="text/css" media="screen" />
<script type="text/javascript" src="fancybox/source/helpers/jquery.fancybox-thumbs.js?v=1.0.7"></script>

<script type="text/javascript">
      function goFullscreen(id) {
        // Get the element that we want to take into fullscreen mode
        var element = document.getElementById(id);
        console.log(element);

        if (element.mozRequestFullScreen) {
          // This is how to go into fullscren mode in Firefox
          // Note the "moz" prefix, which is short for Mozilla.
          element.mozRequestFullScreen();
        } else if (element.webkitRequestFullScreen) {

          // This is how to go into fullscreen mode in Chrome and Safari
          // Both of those browsers are based on the Webkit project, hence the same prefix.
          element.webkitRequestFullScreen();
       }
       // Hooray, now we're in fullscreen mode!
      }
</script>
</head>


<body>
<script type="text/javascript">





    $(document).ready(function() {
         var videotimer

        $(".fancybox").fancybox({
          frameWidth: 2560, 
          frameHeight: 1240,
          overlayShow: true,
          overlayOpacity: 0.7

        });


        $(document).keypress(function(event){

        var keycode = (event.keyCode ? event.keyCode : event.which);
        console.log("key pressed is "+keycode);
        if(keycode == '13'){
            closeWindow();  
        }

        });


        $("a.fancybox").click(function() {

                //get the name of the video from the parent div
                videoname =  $(this).parents("div:first").attr("id");
                link = '"videos/'+videoname+'.mov'+'"'

                tag =  $(this).attr("href");

                videotimer=setTimeout(function() { closeWindow(); },$(this).attr("id"));
                videotimer=setTimeout(function() { playVideo(tag); },3);
        });


        $(".fancybox-close").live("click", function(){ 

            console.log(videotimer) ;
            clearTimeout(videotimer);
            });  

    });//end document.ready


   function closeWindow(){
            console.log("video closed");
            document.webkitCancelFullScreen();
            parent.$.fancybox.close();
            clearTimeout(videotimer);

   }

    function playVideo(tag){
            console.log ("tag is "+tag);
            $(tag).find('video').get(0).currentTime=0;
            $(tag).find('video').get(0).play(); 

   }



</script>


<!--div id="top_bar"></div--> 
<div id="container">

    <div id="top_bg">
        <div id="header">
            <img  src="images/logo.png" alt="logo" />
            <br />
            <br />
            <span class="gotham"> 6 Reasons  </span>
            <span class="gothamthin">we rock <sup>TM</sup>.
            </span>

            <!--a class="fancybox" rel="group" href="images/one.jpg">    <img width="25" height="25" src="images/logo.png" alt="" /></a-->

        </div>

        <div id="reasons_container">
            <div class="sub_row">
                <div id="play_all">
                    <a id="994000" class="highlight fancybox" 
                    href="#videocontainerall"
                    onclick="goFullscreen('vidall')">play all</a>
                </div>

            </div>
            <div class="reasons_row">


                <div id="one" class="home_box featured_box"> 

                    <a id="9000" class="fancybox rollover_one rollover" rel="group" href="#videocontainerone" onclick="goFullscreen('vidone')"> 
                         <span class="reasontext reasontext1">REASON 1</span>
                         <span class="reasontext reasontext2">etc</span>
                         <span class="reasontext reasontext3">etc</span>
                         <span class="reasontext reasontext4">PLAY</span>
                    </a> 
                </div>


                <div id ="two" class="home_box featured_box"> 
                    <a id="5000" class="fancybox rollover_one rollover" rel="group" href="#videocontainertwo"
                    onclick="goFullscreen('vidtwo')"> 
                         <span class="reasontext reasontext1">REASON 2</span>
                         <span class="reasontext reasontext2">etc</span>
                         <span class="reasontext reasontext3">etc</span>
                         <span class="reasontext reasontext4">PLAY</span>

                    </a> 
                </div>

                <div id="three" class="home_box featured_box"> 
                    <a id="5000" class="fancybox rollover_one rollover" rel="group" 
                    onclick="goFullscreen('vidthree')"
                    href="#videocontainerthree"> 
                         <span class="reasontext reasontext1">REASON 3</span>
                         <span class="reasontext reasontext2">etc</span>
                         <span class="reasontext reasontext3">etc</span>
                         <span class="reasontext reasontext4">PLAY</span>

                    </a> 
                </div>
            </div><!-- end reasons row --> 
            <div class="reasons_row">

                <div id="four" class="home_box featured_box"> 
                    <a id="5000" class="fancybox rollover_one rollover" rel="group" href="#videocontainerfour"
                    onclick="goFullscreen('vidfour')"> 
                         <span class="reasontext reasontext1">REASON 4</span>
                         <span class="reasontext reasontext2">etc</span>
                         <span class="reasontext reasontext3">etc</span>
                         <span class="reasontext reasontext4">PLAY</span>

                    </a> 
                </div>

                <div id="five" class="home_box featured_box"> 
                    <a id="5000" class="fancybox rollover_one rollover" rel="group" href="#videocontainerfive"
                    onclick="goFullscreen('vidfive')"> 
                         <span class="reasontext reasontext1">REASON 5</span>
                         <span class="reasontext reasontext2">etc</span>
                         <span class="reasontext reasontext3">etc</span>
                         <span class="reasontext reasontext4">PLAY</span>

                    </a> 
                </div>

                <div id="six" class="home_box featured_box"> 
                    <a id="5000" class="fancybox rollover_one rollover" rel="group" href="#videocontainersix"
                    onclick="goFullscreen('vidsix')">
                         <span class="reasontext reasontext1">REASON 6</span>
                         <span class="reasontext reasontext2">etc</span>
                         <span class="reasontext reasontext3">etc<sup>TM</sup></span>
                         <span class="reasontext reasontext4">PLAY</span> 

                    </a> 
                </div>
            </div><!-- end reasons row --> 



        </div><!-- end reasons container -->

    </div><!-- end top bg  -->
</div>
<div id="footer">
    <div style="float:center; position:relative; margin:20px"> OUR PARTNERSHIPS </div> 
    <br />
    <div id="partnerships_container"> 
        <img src="images/logos.jpeg" />
    </div>
</div><!-- end footer -->






<!-- The Video Objects -->
                <!-- The Video Objects -->
                <div id="videocontainerone" style="width:2560px; height:1240px; display:none; position:relative; top:0px;">
                     <div style="width:2560px; height:1240px; background:#fff">
                             <video width="2560" height="1240" id="vidone" class="player" >
                                <source src="videos/one.mov" type="video/mp4" >
                            </video>
                    </div> 
                </div>

                <div id="videocontainertwo" style="width:2560px; height:1240px; display:none; position:relative; top:0px;">
                     <div style="width:2560px; height:1240px; background:#fff">
                             <video width="2560" height="1240" id="vidtwo" class="player" >
                                <source src="videos/two.mov" type="video/mp4" >
                            </video>
                    </div> 
                </div>

                <div id="videocontainerthree" style="width:2560px; height:1240px; display:none; position:relative; top:0px;">
                     <div style="width:2560px; height:1240px; background:#fff">
                             <video width="2560" height="1240" id="vidthree" class="player" >
                                <source src="videos/three.mov" type="video/mp4" >
                            </video>
                    </div> 
                </div>

                <div id="videocontainerfour" style="width:2560px; height:1240px; display:none; position:relative; top:0px;">
                     <div style="width:2560px; height:1240px; background:#fff">
                             <video width="2560" height="1240" id="vidfour" class="player" >
                                <source src="videos/four.mov" type="video/mp4" >
                            </video>
                    </div> 
                </div>

                <div id="videocontainerfive" style="width:2560px; height:1240px; display:none; position:relative; top:0px;">
                     <div style="width:2560px; height:1240px; background:#fff">
                             <video width="2560" height="1240" id="vidfive" class="player" >
                                <source src="videos/five.mov" type="video/mp4" >
                            </video>
                    </div> 
                </div>

                <div id="videocontainersix" style="width:2560px; height:1240px; display:none; position:relative; top:0px;">
                     <div style="width:2560px; height:1240px; background:#fff">
                             <video width="2560" height="1240" id="vidsix" class="player" >
                                <source src="videos/six.mov" type="video/mp4" >
                            </video>
                    </div> 
                </div>

                <div id="videocontainerall" style="width:2560px; height:1240px; display:none; position:relative; top:0px;">
                     <div style="width:2560px; height:1240px; background:#fff">
                             <video width="2560" height="1240" id="vidall" class="player" >
                                <source src="videos/all.mov" type="video/mp4" >
                            </video>
                    </div> 
                </div>

                <!-- END The Video Objects -->
                <!-- END The Video Objects -->

</body>
</html>
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top