简体   繁体   中英

interactive gif linking to video

I'm making an interactive world map gif, using javascript and html5, here is my code so far:

<!DOCTYPE html>
<html> 
<head>
    <title>World Map</title>
    <body>
<p>Click on a clickable area of the map for more info.</p>
<img src ="worldmap.gif" width="576" height="307" alt="World Map" usemap="#worldmap">

<map name="worldmap">
<area shape="rect" coords="265,49,279,64" href="

but now I'm stuck, firstly i want to know how to link to a video within the html5 video tags, upon the clicking of the linked coordinates, and also how to set javascript parameters within this, such as swapping videos etc. I have the code to be able to do the swap with the videos once the link is clicked, and I have the code to do the coordinates, I just don't know how to put it together.

Thanks so much for you help, but want to keep it super simple using the method i've done and kind of understand (if it works) here is my super simple code

<!DOCTYPE html>
<html> 
<head>
    <title>World Map</title>
    <body>
<p>Click on a clickable area of the map for more info.</p>
<img src ="worldmap.gif" width="576" height="307" alt="World Map" usemap="#worldmap">

<map name="worldmap">
<area shape="rect" coords="265,49,279,64" <video src="ukanthem.mp4"></video>
</map>

</body>
</head>
</html>

the map opens on the page, but the clickable area does not appear to be there?

UPDATE: So the coordinates still don't work, there is no area to click also the video's appear on the same page as my map, I would like them on a seperate page, any help? also the video's aren't recognised, it says "video cannot be found, may have been removed from the server. http 404" World Map

Click on a clickable area of the map for more info.

<map name="worldmap">

<area shape="rect" coords="265,49,279,64" onclick="playVideo()"> 
<video id="video1" class="true" autoplay controls width="420">
<source src="ukanthem.mp4" type="video/mp4">
<source src="ukanthem.mp4" type="video/ogg">
</video>
<video id="video2" class=flase" width="420" controls>
<source src="beef.mp4">
</video>
<button id="hideButton" onclick="swap();">Switch</button>


<script>
var flag=true;
function swap() {
var myVideo1=document.getElementById("Video1");
var myVideo2=document.getElementById("video2");
flag=!flag;
video1.setAttribute("class", flag);
video2.setAttribute("class", !flag);
if (flag) {
    video2.pause();
    video1.play();
} else {
    video1.pause();
    video2.play();
}
}
</script>


</map>

</body>
</head>
</html>

You need a video tag:

<video src="urlofvideo"></video>

You can use jQuery to bind the click events on the image map:

jQuery(document).ready(function($) {
   $('area').bind('click', function(event) {
        event.preventDefault();

       //url of video
        var url = this.href;
       //Here your code to start the video 
       ...
   });
});

Im not 100% sure i understood your question, but i made you this. Its a map with cords on, this is without the old map method, but its with HTML, CSS and Jquery instead.

Sorry if i totally misunderstood, but its my shoot :)

<style type="text/css">
  .map_image { display: block; width: 1280px; height: 960px;  background-repeat: no-repeat; }
  .map_image .map_link { display: block; position: absolute; text-indent: -999em; overflow: hidden; }
  .map_image #paris { width: 150px; height: 80px; top: 11px; left: 11px; border: 1px solid red; }
  .map_image #copenhagen { width: 150px; height: 80px; top: 40px; left: 177px; border: 1px solid yellow;}
</style>

 <div class="map_image" style="background-image: url('your_picture.jpg');">
   <a class="map_link" id="paris" title="google.com"></a>
   <a class="map_link" id="copenhagen" title=""></a>
 </div>

<script>
  $("#paris").click(function() {
    // play a video about paris
    alert("paris");
  });

  $("#copenhagen").click(function() {
    // play a video about paris
    alert("copenhagen");
  });
</script>

Look at my code again please :)

Ok super simple.

You can put an Onclick action to your area tag.

Like this.

<area .... onclick="playVideo()">

And for your HTML 5 video tag...

<video id="video1" width="420">
  <source src="movie.mp4" type="video/mp4">
  <source src="movie.ogg" type="video/ogg">
  Your browser does not support HTML5 video.
</video>

And a Javascript to do things for you: This part is for the normal HEAD HTML tag <-------

<script>
function playVideo() {
  var myVideo=document.getElementById("video1"); 
  myVideo.play(); 
}
</script>

If you want it super easy this is super easy, and i havent used any jquery, or new stuff. Let me know how it goes :)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM