单击时显示元素,不活动时再次隐藏

时间:2015-07-05 09:53:23

标签: javascript jquery html css

我已经设置了一个JSFiddle,我试图显示和隐藏一些文本。 当您单击任何“staff”元素并在动画结束后,我在每个类中显示的文本显示。当用户再次单击“staff”元素时,文本会隐藏/淡出。

我正在进行的工作是:http://jsfiddle.net/tJugd/3571/

HTML:

<div class="slide" style="height:568px;">
    <div class="staff staff-matt" data-hammer="[object Object]">
        <div id="text1"><h1>Lorem Ipsum<h1><p>lorem ipsum dolar<p></div>
    </div>

    <div class="staff staff-shail" data-hammer="[object Object]">
        <div id="text2"><h1>Lorem Ipsum<h1><p>lorem ipsum dolar<p></div>
    </div>

    <div class="staff staff-leah" data-hammer="[object Object]">
        <div id="text3"><h1>Lorem Ipsum<h1><p>lorem ipsum dolar<p></div>
    </div>
</div>

CSS:

.slide{
    height:568px;
    overflow: hidden;
}
.staff{
    -webkit-user-select: none;
    -webkit-user-drag: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    touch-action: none;
    -webkit-transform-origin: 0px 0px 0px;
    opacity: 1;
    -webkit-transform: scale(1, 1);
    width:33%;
    height:568px;
    background:red;
    float: left;
}
.staff-matt{
    background:red;
    box-shadow: rgba(0, 0, 0, 0.298039) 4px 4px 10px 0px;
}
.staff-shail{
    background:white;
    box-shadow: rgba(0, 0, 0, 0.298039) 4px 4px 10px 0px;
}
.staff-leah{
    background:red;
    box-shadow: rgba(0, 0, 0, 0.298039) 4px 4px 10px 0px;
}

#text1, #text3{
    position:relative;
    background-color:white;
    width:50%;
}

JS:

$('.staff').click(function(){
    if($(this).hasClass('clicked')){
        $('.staff').animate({width:'33%'});
    } else {
        $('.staff').not(this).animate({width:'0%'});
        $(this).animate({width:'100%'});
    }
    $(this).toggleClass('clicked');
});

2 个答案:

答案 0 :(得分:5)

someMethod()

jsfiddle http://jsfiddle.net/tJugd/3575/

答案 1 :(得分:5)

只需使用<?php $ids = implode(",", range(1,50)); $JSON = file_get_contents("https://www.googleapis.com/youtube/v3/videoCategories?part=snippet&id=" . $ids . "&key={YOUR-API-KEY}"); $json_data = json_decode($JSON, true); foreach ($json_data['items'] as $category) { echo $category['id'] . ' = ' . $category['snippet']['title'] . '<br/>'; } ?> .fadeIn()属性扩展您的代码,定位您的.fadeOut()包含的文字:

div

并在css中隐藏加载集$('.staff').click(function(){ if($(this).hasClass('clicked')){ $('.staff').animate({width:'33%'}).find('div').fadeOut(); //Added this } else { $('.staff').not(this).animate({width:'0%'}); $(this).animate({width:'100%'}).find('div').fadeIn(); //Added this } $(this).toggleClass('clicked'); }); 上的文本。

JS FIDDLE DEMO