网站新手引导tips提示功能开发经验分享
来源:互联网 发布:c语言教材 谭浩强 pdf 编辑:程序博客网 时间:2024/04/30 13:43
前几天将前端开拓者的前台页面调整为响应式网页,发现在手机端的页面布局下导航栏非常难以处理。通过多种方案的尝试与调整,最终决定将导航栏设置为超出屏幕宽度横向滚动的方式以满足布局与功能上的需要。
如上图,在web浏览器中可以看到一个横向滚动的滚动条,用户很清楚的知道可以拖动导航条以查看后面的导航内容。但是在手机中,并没有这样的滚动条显示,多数情况下是看不到的。因此导航条可以滚动的这项功能很可能不会被用户发现,从而导致用户体验上的障碍,因此网站功能上的引导便显得尤为重要。
如何在网站上引导用户关注你网站上无法直接看到的功能呢?目前比较主流的常见做法是当用户第一次进入你的网站是时给与一个悬浮的提示窗口,用户可以选择性的关闭这个窗口,完成用户的第一次功能体验引导。
如下图,可以有效的告知用户导航条是具有滚动功能的。
开发tips功能的思路?
一、首先要在HTML中做好相应的tips对话框窗口,使其能够正确的显示在需要的位置。这里需要用到HTML与CSS的相关知识,具体需要怎么做本文就不做详细讲解。
二、通过jquery来控制tips窗体的显示与消失
三、为了避免用户每次打开网页都显示tips窗口,我们还需要通过js来设置与读取cookie,用于保存用户上次关闭tips的操作。
四、为了获得更好的体验,可以考虑为页面增加一些遮罩,突出显示需要展示的功能位置。
jquery完整的实现代码
通过不断的调试与测试,前端开拓者的tips功能已经能够正常运行,下面将jquery部分的代码分享给大家,并且会加上相应的注释以便与大家理解。由于每个网站的需求与实际情况都不同,html和css部分请自行按需编写。
/*设置cookie*/$(document).ready(function(e) { $('#tclose').click(function(){$(".m960tips").hide(); //隐藏tips整体窗口var date=new Date(); //获取当前时间var expiresDays=365; //将date设置为365天以后的时间date.setTime(date.getTime()+expiresDays*24*3600*1000); //将tips的cookie设置为10天后过期 document.cookie="tips=1;expires="+date.toGMTString(); //设置cookie})});$(function(){/*获取cookie参数*/var getCookie = document.cookie.replace(/[ ]/g,"") //获取cookie,并且将获得的cookie格式化,去掉空格字符var arrCookie = getCookie.split(";") //将获得的cookie以“分号”为标识 将cookie保存到arrCookie的数组中var tips; //声明变量tipsfor(var i=0;i<arrCookie.length;i++){ //使用for循环查找cookie中的tips变量var arr=arrCookie[i].split("="); //将单条cookie用“等号”为标识,将单条cookie保存为arr数组if("tips"==arr[0]){ //匹配变量名称,其中arr[0]是指的cookie名称,如果该条变量为tips则执行判断语句中的赋值操作tips=arr[1]; //将cookie的值赋给变量tipsbreak; //终止for循环遍历} }/*判断cookie是否设置,如果没有设置cookie则显示提示文字*/if(tips != 1){ //默认情况下判断,如果没有设置tips则执行下面的脚本,将tips对话框显示出来var WHeight = $(window).height();var WWidth = parseInt($(window).width());if(WWidth < 960){$('.m960tips').show();$('#bakg').css("height",WHeight);$('#bakg').show();$('.m960tips').css("z-index","999");$('.navcon').css("z-index","999");}}})
- 网站新手引导tips提示功能开发经验分享
- 【步兵 经验篇】新手引导
- 分享网站开发的一些经验
- UGUI新手引导开发
- 经验分享之tips(1)
- 经验分享之tips(2)
- 经验分享之tips(3)
- 功能性网站开发经验心得
- Unity3D新手引导开发手记
- Unity3D新手引导开发手记
- Unity3D新手引导开发手记
- ClippingNode 新手引导 高亮选择提示
- android实现App新手引导功能
- 网站新手引导(js+jquery)
- 新手调试HTC vive经验分享
- Wince开发经验分享
- silverlight开发经验分享
- OPhone开发经验分享
- Unity3D工具类 - 鼠标单击/双击
- 二级指针的3种内存模型
- 5分种让你了解javascript异步编程的前世今生,从onclick到await/async
- Spring中的ContextLoaderListener使用
- Android Installation error: INSTALL_FAILED_VERSION_DOWNGRADE
- 网站新手引导tips提示功能开发经验分享
- kindeditor-4 img 绝对路径问题
- A Simple Web App with Spring Boot, Spring Security and Stormpath – in 15 Minutes
- OpenGL ES教程
- 苹果开发者账号注册申请流程
- STM32的串口中断发送
- centos下源码安装ejabberd16.04
- 我的第一个struts2.1-hibernate3.2程序(基于myeclipce2016)
- UITableView的cell复用,UICollectionView的cell复用