html历史管理—提高用户体验
2016-07-31 15:54
127 查看
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>html历史管理—提高用户体验</title> </head> <script type="text/javascript"> //两种方法// ¥注释的为第一种方法 当hash值有变化时,触发事件onhashchange
// $ 为第二种方
//第二种实现: histroy //pushState:三个参数:数据 标题(都没实现) 地址(可选) //popstate事件: 读取数据 event.state
window.onload = function () { var oDiv = document.getElementById('div1'), oInput = document.getElementById('input1'); var obj = {};//对象数组 var num; oInput.onclick = function () { var number = randomNum(35,7); oDiv.innerHTML = number; history.pushState(number, ''); //取值 num++自己设定网址 // $$ // ¥ var oRD = Math.random();//产生随机数; // ¥ obj[oRD]=number; // ¥ window.location.hash = oRD;//网址上显示的内容 // ¥ //window.location.hash = number; //将数 存储到hash表中 此时产生历史管理 } // ¥ //当hash值有变化时,触发该事件onhashchange ;window.location.hash.substring(1);hash中存储的随机数 // ¥ window.onhashchange = function () { // ¥ // var number = window.location.hash.substring(1); 下面随机数 通过obj 映射的数组 // ¥ //obj[ window.location.hash.substring(1)];为空时,会返回一个undefined ,|| '' 不显示内容 // ¥ var number =obj[ window.location.hash.substring(1)] || '';//获取的hash值有#,substring() 截取#号 // ¥ oDiv.innerHTML = number;//将获取的hash值重新显示在页面上 // ¥ } //历史点击时,触发该事件 取值 window.onpopstate = function (ev) { // $$ var number =ev.state || ''; // $$ oDiv.innerHTML=number; // $$ }// $$ //产生随机数 function randomNum(alls, now) { var arr = [];//将35数组存储到数组中 var newArr = [];//存放7个元素 for (var i = 1; i < alls; i++) { // alert(arr); 此函数用来测试 arr.push(i); } // arr.splice( index,1)从下表开始index数,去1个元素 放到数组中 //Math.floor(Math.random()*arr.length),Math.random()随机产生一个小数,在0~arr.length之间随意取个值 Math.floor上取整, for (var i = 0; i < now; i++) { var a = Math.floor(Math.random() * arr.length); newArr.push(arr.splice(a, 1)); } return newArr; } } //第二种实现: histroy //pushState:三个参数:数据 标题(都没实现) 地址(可选) //popstate事件: 读取数据 event.state </script> <body> <input type="button" value="35选7" id="input1"/> <div id="div1"> </div> </body> </html>
相关文章推荐
- 提高用户体验的编程细节系列内容之自动切换输入法 (http://www.cnblogs.com/mz121star/archive/2011/02/20/yonghutiyan.html)
- 项目管理-统一如何快速提高用户的体验 推荐
- HTML输入框优化以此来提高用户体验和易用度
- 上周技术关注:大型社区提高用户体验的10个细节
- 大型社区设计:提高用户体验的10个细节
- 通过字体大小的设计来提高用户体验
- 用户输入查询与拼音首字母的结合,提高用户的操作体验
- ASP.NET 2.0新控件、管理外观、布局及其它用户体验
- 改进dedeCMS站内搜索提高用户体验
- Citrix XenApp 5在性能、用户体验和运营成本上取得突破,提高应用虚拟化利用率
- 提高 UAC 提示的用户体验
- 中小互联网公司如何提高网站用户体验
- 利用ASP.NET2.0向导控件一步步建立与用户的交互--------提高和自定义用户体验
- 如何提高网页中图片显示的用户体验(附源码下载)
- 如何提高网页中图片显示的用户体验(附源码下载)
- 使用异步页面,后台线程提高用户体验和服务器端性能
- 大型社区设计:提高用户体验的10个细节
- 提高用户体验的10个细节
- [转]用户体验与产品管理(完整版)
- 细微处提高tab标签鼠标效果的用户体验