1

この方法で、HTML、CSS、Jquery/Javascript を使用して画像のループを実装したい 画像 と考えています。 time) そして、現在の画像の上にいくつかのテキストをポップアップします。たとえば、画像 C にカーソルを合わせると、ループが停止し、ホバーを外すと、画像 C から続行する必要があります。しかし、これを実装する方法がわかりません。誰が私に何を使うべきか、または同様の例を教えてくれますか? ありがとう。

4

3 に答える 3

3

ここに私があなたのためにしたことがあります。それがあなたが探しているものであることを願っています。(テストに使用した画像は 200px あたり 200px でした。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Page title</title>


   <script src=http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js></script>
   <script>
        $(document).ready(function() {
            var currentImg = 1,
                totalImages = 4
                loopTime = 1000,
                intervalId = null;


            function displayTitle(imgNbr) {
                $('.title').hide();
                $('#image'+imgNbr).prev('div').show();
            }

            $('img').on('mouseover', function() {
                clearInterval(intervalId);
                displayTitle($(this).parent().attr('id').substring(5));
            }).on('mouseout', function() {
                currentImg = $(this).parent().attr('id').substring(5);
                startLoop();
            })

            function startLoop() {
                intervalId = setInterval(function() {
                    displayTitle(currentImg);
                    currentImg = ((currentImg == totalImages) ? 1 : parseInt(currentImg)+1);
                }, loopTime);
            }
            startLoop();
        });
   </script>
   <style>
       .imgcontainer {
           margin: 10px;
           float: left;
           position: relative;
           text-align: center;
       }
       .title {
           position: absolute;
           top: 70px;
           left: 60px;
           color: #ffffff;
           display: none;
       }
       .img {
           clear: both;
       }
   </style>

</head>
<body>

<div class="imgcontainer">
    <div class="title">title 1</div>
    <div class="img" id="image1"><img src="images/image1.jpg" /></div>
</div>

<div class="imgcontainer">
    <div class="title">title 2</div>
    <div class="img" id="image2"><img src="images/image2.jpg" /></div>
</div>    

<div class="imgcontainer">
    <div class="title">title 3</div>
    <div class="img" id="image3"><img src="images/image3.jpg" /></div>
</div>

<div class="imgcontainer">
    <div class="title">title 4</div>
    <div class="img" id="image4"><img src="images/image4.jpg" /></div>
</div>    

</body>
</html>
于 2012-06-19T09:48:14.860 に答える
0

@Asif が彼の回答で述べているように、この種のものには、公開されている JavaScript コンポーネントが多数あります。

私はDynamic DriveのLightbox Image Viewer v2.03aを数回使用しましたが(これはあなたが求めているものではありません)、そのサイトには他にも見るべきものがたくさんあります。後。

于 2012-06-19T08:39:15.433 に答える
0

「カルーセル」が必要です。

JQuery を使用できる場合、CarouFredSelは非常に優れたオプションです。例を次に示します。

また、JavaScript を使用する場合は、 Conveyor Belt Slideshow Scriptを使用できます。

于 2012-06-19T08:28:00.410 に答える