html5中的页面交互元素有哪些

html-css021

html5中的页面交互元素有哪些,第1张

1、点击屏幕交互点击是最常用的手势,经常用于页面切换。点击引导可以作为注释,用户可以理解H5内容,使用户能够按照H5的节奏操作。例如,在《带上希望的种子去北京》中,用户可以点击手势“检查”行李箱,详细查看H5设计的内容。2、连续点击交互连击交互在游戏类中的应用比较多。在游戏类H5中,通常由连续点击生成的数值关联积分排名,具有竞技性质的H5可以进一步吸引用户参与。例如,《漫威电影十周年》的“揍”灭霸小游戏,用户继续点击屏幕,10秒内的点击次数就会计算出整个网络排名。3、长按交互长按是用户根据H5引导长时间触摸页面。长按交互用户需要保持手指静止状态,并在设计时提示H5播放进度参考,以避免乏味。例如,从腾讯公益的《敦煌未来博物馆》设计的风化过程来看,用户点击手机即可看到壁画随着年份推移逐渐风化的场景,还可以唤醒用户心中的文化保护意识。4、滑动交互拖拽交互必须在长按交互的基础上滑动,从一个点拖动到另一个点可以让用户自行控制速度。适合图片展示类的H5。例如,在《睡姿大比拼》中,用户可以拖动角色肢体来创建各种有趣的睡眠姿势。5、重力交互重力交互是一个非常直观的表达形式,用户可以轻松get到H5获得乐趣,这意味着手机硬件能升级给H5设计带来了更多的可能性。利用重力感应、陀螺仪、速度加速器等硬件,对H5的玩法进行创新,提高用户的代入感。例如,安装在《一“陆”狂飙,极速挑战》上的赛车游戏是通过手机重力传感来调整小车的方向。6、全景交互全景交互在屏幕中以360度展现所有场景,用户可以通过滑动移动场景。这种H5格式(如VR)需要关注整个场景的设计,边界连接要足够顺畅,全景加载内容较大,一定要注意用户等待和屏幕卡顿的问题。例如,华为出品的《我的荣耀5G世界》中全景互动展示了未来丰富多彩的5G世界。以上几种就是现目前比较常见的H5交互元素,如有帮助请采纳~

其次,html5是一种实现移动应用的方式,随着device API的丰富,给了h5各种可能性

那么,html5可以做什么?

大家讨论的比较多的是html5和native的性能对比,开发速度,维护,升级等方面的问题,但这些在我看来不是大问题,随着硬件的提升,相信html5的性能会越来越好。我比较看好的是device API在未来可以应用的空间:

1. 利用重力感应开发物理游戏

2. 陀螺仪实现摇一摇

3. video和audio开发语音识别和视频通话、虚拟现实、增强现实

4. 湿度和温度传感器可以开发智能家居

5. webnfc可以用来开发近场通讯支付

6. 震动API

7. 距离传感器

8. 噪音检测

var con = document.getElementById("con")

 

(function(){

    // 监听运动传感事件,查看是否支持硬件运动

    if (window.DeviceMotionEvent) {

        window.addEventListener('devicemotion', deviceMotionHandler, false)

    } else {

        alert("您的设备不支持硬件调用")

    }

 

    // 变量初始化

    var x = 0,

     y = 0,

     z = 0,

    lastX = 0,

    lastY = 0,

    lastZ = 0,

curTime = 0,

lastTime = 0,

diffTime = 0,

    speed = 0

 

    // 设置一个阀值

    var SHAKE_THRESHOLD = 800 // 设定摇晃的阈值为600 运行相应操作

 

    /*

     * 功能:测算三个方向重力加速度,达到一定值进行相应操作

     * 作者:HTML5学堂、刘国利、陈能堡

     *

     */

    function deviceMotionHandler(eventData){

        var acceleration = eventData.accelerationIncludingGravity

 

        // 获取当前时间

        curTime = new Date().getTime()

        // 计算时间差,当这个差值大于一定值执行计算三个方向的速度

        if ((curTime - lastTime) > 100) {

            // 记录上一次的时间

            diffTime = curTime - lastTime

            lastTime = curTime

 

            // 获取当前三个方向的值

            x = acceleration.x

            y = acceleration.y

            z = acceleration.z

 

            // 计算速度,为了防止出现负数,进行绝对值

            speed = Math.abs((x + y + z - lastX - lastY - lastZ) / diffTime * 8000)

            if (speed > SHAKE_THRESHOLD) {

                alert("我实现摇一摇了")

            }

 

            // 记录上一次三个方向的值

            lastX = x

            lastY = y

            lastZ = z                    

        }

    }

})()

资料来源HTML5学堂。