html5支持左右键切换页面

来源:https://www.sucaihuo.com/js/741.html 2016-02-05 20:53浏览(2305) 收藏

本文演示了3个不同的页面轮播切换,代码小编是看不懂。
html5支持左右键切换页面
分类:3D > 页面滚动 难易:高级
查看演示 下载资源 下载积分: 20 积分
关注公众号,免费赠送安装视频教程、环境和学习视频,后面会不断更新。

切换页面html代码

<article class="kontext"> 
    <div class="layer one show"> 
        <h2>sucaihuo</h2> 
        <p>洗牌式页面切换动画效果。使用下面的圆点按钮或键盘方向键切换页面。</p> 
    </div> 
    <div class="layer two"> 
        <h2>第二页</h2> 
    </div> 
    <div class="layer three"> 
        <h2>第三页</h2> 
    </div> 
</article>
// Create a new instance of kontext
var k = kontext(document.querySelector('.kontext'));
// API METHODS:

// k.prev(); // Show prev layer
// k.next(); // Show next layer
// k.show( 3 ); // Show specific layer
// k.getIndex(); // Index of current layer
// k.getTotal(); // Total number of layers
// DEMO-SPECIFIC:

var bulletsContainer = document.body.querySelector('.bullets');

// Create one bullet per layer
for (var i = 0, len = k.getTotal(); i < len; i++) {
    var bullet = document.createElement('li');
    bullet.className = i === 0 ? 'active' : '';
    bullet.setAttribute('index', i);
    bullet.onclick = function(event) {
        k.show(event.target.getAttribute('index'))
    };
    bullet.ontouchstart = function(event) {
        k.show(event.target.getAttribute('index'))
    };
    bulletsContainer.appendChild(bullet);
}

// Update the bullets when the layer changes
k.changed.add(function(layer, index) {
    var bullets = document.body.querySelectorAll('.bullets li');
    for (var i = 0, len = bullets.length; i < len; i++) {
        bullets[i].className = i === index ? 'active' : '';
    }
});

document.addEventListener('keyup', function(event) {
    if (event.keyCode === 37)
        k.prev();
    if (event.keyCode === 39)
        k.next();
}, false);

var touchX = 0;
var touchConsumed = false;

document.addEventListener('touchstart', function(event) {
    touchConsumed = false;
    lastX = event.touches[0].clientX;
}, false);

document.addEventListener('touchmove', function(event) {
    event.preventDefault();

    if (!touchConsumed) {
        if (event.touches[0].clientX > lastX + 10) {
            k.prev();
            touchConsumed = true;
        }
        else if (event.touches[0].clientX < lastX - 10) {
            k.next();
            touchConsumed = true;
        }
    }
}, false);
标签: 页面切换洗牌
评论0
头像

系统已开启自动识别垃圾评论机制,识别到的自动封号,下载出错或者资源有问题请联系全栈客服QQ 1915635791

1 2