在菜单点击上暂停背景幻灯片动画

时间:2014-03-03 20:21:31

标签: css3 slideshow

我下载了一个简单的网站模板,我正在创建一个非常基本的网站。然后我使用“.cb-slideshow”下载了一个用于背景幻灯片动画的脚本。一切正常并且看起来很不错,但是当我点击导航菜单中的菜单项时,我希望背景动画暂停。原谅我缺乏正确的命名法,但点击菜单项后,会打开一个带有内容(主要是文本)的黑匣子。当我点击菜单项时,我只想停止背景动画,然后从关闭内容窗口时的位置重新开始。背景动画是一系列淡入和淡出的6个图像,每个图像都有一个文本短语。左侧有一个静态导航菜单,有3个可点击的内容链接;每一个都会导致子窗口弹出内容。我希望点击导航链接的操作导致背景幻灯片暂停,然后在内容子窗口关闭时重新开始幻灯片放映。

这是css样式表:

.cb-slideshow,
.cb-slideshow:after {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    z-index: 0;
}
.cb-slideshow:after {
    content: '';
    background: transparent url(../images/pattern.png) repeat top left;
}
.cb-slideshow li span {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    color: transparent;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: none;
    opacity: 0;
    z-index: 0;
    -webkit-backface-visibility: hidden;
    -webkit-animation: imageAnimation 36s linear infinite 0s;
    -moz-animation: imageAnimation 36s linear infinite 0s;
    -o-animation: imageAnimation 36s linear infinite 0s;
    -ms-animation: imageAnimation 36s linear infinite 0s;
    animation: imageAnimation 36s linear infinite 0s;
}
.cb-slideshow li div {
    z-index: 1000;
    position: absolute;
    bottom: 115px;
    left: 0px;
    width: 100%;
    text-align: right;
    opacity: 0;
    -webkit-animation: titleAnimation 36s linear infinite 0s;
    -moz-animation: titleAnimation 36s linear infinite 0s;
    -o-animation: titleAnimation 36s linear infinite 0s;
    -ms-animation: titleAnimation 36s linear infinite 0s;
    animation: titleAnimation 36s linear infinite 0s;
}
.cb-slideshow li div h3 {
    font-family: 'BebasNeueRegular', 'Arial Narrow', Arial, sans-serif;
    font-size: 120px;
    padding: 0 30px;
    line-height: 120px;
    color: rgba(169,3,41, 0.8);
}
.cb-slideshow li:nth-child(1) span { background-image: url(../images/1.jpg) }
.cb-slideshow li:nth-child(2) span {
    background-image: url(../images/2.jpg);
    -webkit-animation-delay: 6s;
    -moz-animation-delay: 6s;
    -o-animation-delay: 6s;
    -ms-animation-delay: 6s;
    animation-delay: 6s;
}
.cb-slideshow li:nth-child(3) span {
    background-image: url(../images/3.jpg);
    -webkit-animation-delay: 12s;
    -moz-animation-delay: 12s;
    -o-animation-delay: 12s;
    -ms-animation-delay: 12s;
    animation-delay: 12s;
}
.cb-slideshow li:nth-child(4) span {
    background-image: url(../images/4.jpg);
    -webkit-animation-delay: 18s;
    -moz-animation-delay: 18s;
    -o-animation-delay: 18s;
    -ms-animation-delay: 18s;
    animation-delay: 18s;
}
.cb-slideshow li:nth-child(5) span {
    background-image: url(../images/5.jpg);
    -webkit-animation-delay: 24s;
    -moz-animation-delay: 24s;
    -o-animation-delay: 24s;
    -ms-animation-delay: 24s;
    animation-delay: 24s;
}
.cb-slideshow li:nth-child(6) span {
    background-image: url(../images/6.jpg);
    -webkit-animation-delay: 30s;
    -moz-animation-delay: 30s;
    -o-animation-delay: 30s;
    -ms-animation-delay: 30s;
    animation-delay: 30s;
}
.cb-slideshow li:nth-child(2) div {
    -webkit-animation-delay: 6s;
    -moz-animation-delay: 6s;
    -o-animation-delay: 6s;
    -ms-animation-delay: 6s;
    animation-delay: 6s;
}
.cb-slideshow li:nth-child(3) div {
    -webkit-animation-delay: 12s;
    -moz-animation-delay: 12s;
    -o-animation-delay: 12s;
    -ms-animation-delay: 12s;
    animation-delay: 12s;
}
.cb-slideshow li:nth-child(4) div {
    -webkit-animation-delay: 18s;
    -moz-animation-delay: 18s;
    -o-animation-delay: 18s;
    -ms-animation-delay: 18s;
    animation-delay: 18s;
}
.cb-slideshow li:nth-child(5) div {
    -webkit-animation-delay: 24s;
    -moz-animation-delay: 24s;
    -o-animation-delay: 24s;
    -ms-animation-delay: 24s;
    animation-delay: 24s;
}
.cb-slideshow li:nth-child(6) div {
    -webkit-animation-delay: 30s;
    -moz-animation-delay: 30s;
    -o-animation-delay: 30s;
    -ms-animation-delay: 30s;
    animation-delay: 30s;
}
@-webkit-keyframes imageAnimation { 
    0% { opacity: 0;
    -webkit-animation-timing-function: ease-in; }
    8% { opacity: 1;
         -webkit-animation-timing-function: ease-out; }
    17% { opacity: 1 }
    25% { opacity: 0 }
    100% { opacity: 0 }
}
@-moz-keyframes imageAnimation { 
    0% { opacity: 0;
    -moz-animation-timing-function: ease-in; }
    8% { opacity: 1;
         -moz-animation-timing-function: ease-out; }
    17% { opacity: 1 }
    25% { opacity: 0 }
    100% { opacity: 0 }
}
@-o-keyframes imageAnimation { 
    0% { opacity: 0;
    -o-animation-timing-function: ease-in; }
    8% { opacity: 1;
         -o-animation-timing-function: ease-out; }
    17% { opacity: 1 }
    25% { opacity: 0 }
    100% { opacity: 0 }
}
@-ms-keyframes imageAnimation { 
    0% { opacity: 0;
    -ms-animation-timing-function: ease-in; }
    8% { opacity: 1;
         -ms-animation-timing-function: ease-out; }
    17% { opacity: 1 }
    25% { opacity: 0 }
    100% { opacity: 0 }
}
@keyframes imageAnimation { 
    0% { opacity: 0;
    animation-timing-function: ease-in; }
    8% { opacity: 1;
         animation-timing-function: ease-out; }
    17% { opacity: 1 }
    25% { opacity: 0 }
    100% { opacity: 0 }
}
@-webkit-keyframes titleAnimation { 
    0% {
        opacity: 0;
        -webkit-transform: translateX(200px);
    }
    8% {
        opacity: 1;
        -webkit-transform: translateX(0px);
    }
    17% {
        opacity: 1;
        -webkit-transform: translateX(0px);
    }
    19% {
        opacity: 0;
        -webkit-transform: translateX(-400px);
    }
    25% { opacity: 0 }
    100% { opacity: 0 }
}
@-moz-keyframes titleAnimation { 
    0% {
        opacity: 0;
        -moz-transform: translateX(200px);
    }
    8% {
        opacity: 1;
        -moz-transform: translateX(0px);
    }
    17% {
        opacity: 1;
        -moz-transform: translateX(0px);
    }
    19% {
        opacity: 0;
        -moz-transform: translateX(-400px);
    }
    25% { opacity: 0 }
    100% { opacity: 0 }
}
@-o-keyframes titleAnimation { 
    0% {
        opacity: 0;
        -o-transform: translateX(200px);
    }
    8% {
        opacity: 1;
        -o-transform: translateX(0px);
    }
    17% {
        opacity: 1;
        -o-transform: translateX(0px);
    }
    19% {
        opacity: 0;
        -o-transform: translateX(-400px);
    }
    25% { opacity: 0 }
    100% { opacity: 0 }
}
@-ms-keyframes titleAnimation { 
    0% {
        opacity: 0;
        -ms-transform: translateX(200px);
    }
    8% {
        opacity: 1;
        -ms-transform: translateX(0px);
    }
    17% {
        opacity: 1;
        -ms-transform: translateX(0px);
    }
    19% {
        opacity: 0;
        -ms-transform: translateX(-400px);
    }
    25% { opacity: 0 }
    100% { opacity: 0 }
}
@keyframes titleAnimation { 
    0% {
        opacity: 0;
        transform: translateX(200px);
    }
    8% {
        opacity: 1;
        transform: translateX(0px);
    }
    17% {
        opacity: 1;
        transform: translateX(0px);
    }
    19% {
        opacity: 0;
        transform: translateX(-400px);
    }
    25% { opacity: 0 }
    100% { opacity: 0 }
}
/* Show at least something when animations not supported */
.no-cssanimations .cb-slideshow li span{
    opacity: 1;
}
@media screen and (max-width: 1140px) { 
    .cb-slideshow li div h3 { font-size: 100px }
}
@media screen and (max-width: 600px) { 
    .cb-slideshow li div h3 { font-size: 50px }
}

这里是html中引用的地方:

</head>
    <body id="page1">
     <ul class="cb-slideshow">
            <li><span>Image 01</span><div><h3>phrase 1</h3></div></li>
            <li><span>Image 02</span><div><h3>phrase 2</h3></div></li>
            <li><span>Image 03</span><div><h3>phrase 3</h3></div></li>
            <li><span>Image 04</span><div><h3>phrase 4</h3></div></li>
            <li><span>Image 05</span><div><h3>phrase 5</h3></div></li>
            <li><span>Image 06</span><div><h3>phrase 6</h3></div></li>
        </ul>
        <div class="spinner"></div>
        <div class="extra">
            <div class="main">
                <div class="box">

0 个答案:

没有答案