Diskuze: jedna událost pro elementy #element1, #element2, ...
V předchozím kvízu, Online test znalostí JavaScript, jsme si ověřili nabyté zkušenosti z kurzu.
Tvůrce
Zobrazeno 10 zpráv z 10.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí JavaScript, jsme si ověřili nabyté zkušenosti z kurzu.
Možná se to trošku utopilo díky diskusi ohledně baterek a souborů v php, tak se připomínám
Můžeš si pomoct data atributy:
$('[data-animation-target]').click(function() {
var element = $(this);
$(element.data('animationTarget')).addClass('animations-slide-down');
});
<button data-animation-target="#article1">Spusť animaci</button>
stejně jako v css ...
$('article1, article2, article3').slideDown();
nebo také třeba
$('main > article').each();
To je mi na prd jedno jak druhý, protože potřebuju otevřít vždycky jeden jedinej, podle toho na který odkaz (respektive položku seznamu) jsem kliknul
Tady na téhle stránce -> novinky -> aktuality -> klikni na první položku v seznamu
jo tak to jsem předtím asi nepochopil otázku no
Tak pánové, řešení je na světě Trošku jsem si s tím pohrál a ve výsledku mám toto:
JS:
// Clicking on news list items will display the article
$(".article-link").click(function () {
if($('#article' + $(this).data('id')).length) {
$('#article' + $(this).data('id')).slideDown(100);
$('#darken').fadeIn(700);
}
});
$(".js-article,#darken").click(function () {
$('.js-article').slideUp(100);
$('#darken').fadeOut(300);
});
HTML:
<!-- Article links -->
<li class="article-link" data-id="1">
...
</li>
<li class="article-link" data-id="2">
...
</li>
...
<!-- Articles -->
<article id="article1" class="js-article">
<h2>Article 1</h2>
<p>Nějaký text</p>
</article>
<article id="article2" class="js-article">
<h2>Article 2</h2>
<p>Jiný text</p>
</article>
CSS:
/* the "think" behind the article, that makes everything else darker :D */
#darken{
position: fixed;
top: 0;
left: 0;
height: 100%;
width: 100%;
/* not supported RGBa */
background: rgb(0, 0, 0) transparent;
/* 80% black */
background: rgba(0, 0, 0, 0.8);
/* IE 5.5 - 7*/
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#bb000000, endColorstr=#bb000000);
/* IE 8*/
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#bb000000, endColorstr=#bb000000)";
display: none;
}
/* class for articles */
.js-article{
width: 900px;
height: 90%;
position: fixed;
top: 5%;
left: 50%;
margin-left: -460px;
background: #000;
border: 5px solid #8c7243;
display: none;
}
Drahomír Hanák, Honza Bittner, díky
Třeba se to někomu bude hodit, teď ještě přidám nějaký křížek nebo jen text na zavírání a bude to dobré Takhle to vypadá
Zobrazeno 10 zpráv z 10.