Ich versuche, einen Seitenfolienübergang ohne jQuery mit dynamischem Inhalt (Ajax) zu machen. Ich wollte zuerst versuchen, es nur mit CSS zu tun, aber mein Versuch hat nicht funktioniert und niemand hat bisher auf meine CSS question Antwort darauf reagiert.Seitenfolie ohne Jquery?
Ich entschied mich, dies mit JavaScript zu tun, aber ich kann nicht scheinen, die Klasse zu laden, wenn ich es wünsche. Irgendein Rat?
Meine Demo-Versuch: Test Page
Und der Code:
javascript:
function pageSlide (n) {
var slide = document.getElementById(n);
if(slide.className === 'aniDown') {
slide.className = 'aniUp'; }
else if (slide.className === 'aniUp'){
slide.className = 'aniDown'; } }
function sectionAssure(classID) {
pageSlide(classID);
setTimeout(function () {
var tmp = '';
var sel = document.getElementsByTagName('section');
for (var i=0; i<sel.length; i++){
if (sel[i].id == classID) { tmp = 'block' } else { tmp = 'none' }
sel[i].style.display = tmp; }
pageSlide(classID); }, (1000));
}
css:
.aniDown {
z-index:0;
-webkit-animation-name: slideDown;
-webkit-animation-duration: 2s;
-webkit-animation-iteration-count: 1;
-webkit-animation-timing-function: ease;
-webkit-animation-direction:normal;
}
@-webkit-keyframes slideDown {
0% { margin-top:-3000px; }
40% { margin-top:-100px; }
100% { margin-top:0px; }
}
.saniUp {
-webkit-animation-name: slideUp;
-webkit-animation-duration: 2s;
-webkit-animation-iteration-count: 1;
-webkit-animation-timing-function: ease;
-webkit-animation-direction:normal;
}
@-webkit-keyframes slideUp {
0% {margin-top:0px;}
20% {margin-top:-1000px;}
100% {margin-top:-3000px;}
}
html5:
<header>
<nav id="headNav">
<ul>
<li><a href="#" onclick="checkPage('page1', 'home.html');return false">Home</a></li>
<li><a href="#" onclick="checkPage('page2', 'about.html');return false">About</a></li>
</ul>
</nav>
</header>
<!-- Content Areas: (Variable visual)-->
<div id="contentBody">
<br>
<section class="aniDown" id="page1">
<script>loadContent('page1','home.html');</script>
</section>
<section class="aniDown" id="page2"></section>
</div>
Die Konsole sagt, ich mache die Dinge in der richtigen Reihenfolge und es scheint keine Fehler zu geben. Bei der aktiven Version wird console.log angezeigt. –
Schießen !! Ich habe gerade bemerkt, dass ich classID anrufe, ich rufe an, um eine Seite zu machen, bevor es überhaupt sichtbar ist. Lass mich versuchen und eine Korrektur machen, hoffentlich klappt das doch. –
Arrg, gerade aufgefallen, dass ich auch einen Tippfehler in der .aniUp Klasse hatte. Nehmen Sie sich eine Minute Zeit und wiederholen Sie einige Dinge. –