热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

js记录信息代码(js历史记录)

本文目录一览:1、js如何实现历史记录?2、j

本文目录一览:


  • 1、js如何实现历史记录?


  • 2、js代码怎么写


  • 3、百度统计 事件跟踪 js代码怎么写


  • 4、如何用js实现调用手机摄像头扫描条形码然后带出条形码的值到文本框


  • 5、js实现COOKIE历史记录 源代码及详解


  • 6、如何用JS代码来写出每次系统登陆的时候,平台日志就会记录你的所有操作和登陆时间?

js如何实现历史记录?

在被浏览页面加入一段代码实现这样的功能:

根据页面标题和url写入locationStorage

写入时,只写入最后10条记录

在显示历史页面,读取locationStorage把历史记录显示出来

js代码怎么写

建议楼主看下js基础

每一项都是js使用中的小技巧,基础但十分的实用!

1.document.write(""); 输出语句

2.JS中的注释为//

3.传统的HTML文档顺序是:

document-html-(head,body)

4.一个浏览器窗口中的DOM顺序是:

window-(navigator,screen,history,location,document)

5.得到表单中元素的名称和值:

document.getElementById("表单中元素的ID号").name(或value)

6.一个小写转大写的JS:

document.getElementById("output").value=document.getElementById("input").value.toUpperCase();

7.JS中的值类型:

String,Number,Boolean,Null,Object,Function

8.JS中的字符型转换成数值型:

parseInt(),parseFloat()

9.JS中的数字转换成字符型:

("" 变量)

10.JS中的取字符串长度是:

(length)

11.JS中的字符与字符相连接使用 号.

12.JS中的比较操作符有:

==等于,!=不等于,,=,.=

13.JS中声明变量使用:

var来进行声明

14.JS中的判断语句结构:

if(condition){}else{}

15.JS中的循环结构:

for([initial expression];[condition];[upadte expression]) {inside loop}

16.循环中止的命令是:

break

17.JS中的函数定义:

function functionName([parameter],...){statement[s]}

18.当文件中出现多个form表单时.可以用document.forms[0],document.forms[1]来代替.

19.窗口:

打开窗口window.open(), 关闭一个窗口:window.close(), 窗口本身:self

20.状态栏的设置:

window.status="字符";

21.弹出提示信息:

window.alert("字符");

22.弹出确认框:

window.confirm();

23.弹出输入提示框:

window.prompt();

24.指定当前显示链接的位置:

window.location.href="URL"

25.取出窗体中的所有表单的数量:

document.forms.length

26.关闭文档的输出流:

document.close();

27.字符串追加连接符: =

28.创建一个文档元素:

document.createElement(),document.createTextNode()

29.得到元素的方法:

document.getElementById()

30.设置表单中所有文本型的成员的值为空:

var form = window.document.forms[0]

for (var i = 0; iform.elements.length;i ){

if (form.elements.type == "text"){

form.elements.value = "";

}

}

百度统计 事件跟踪 js代码怎么写

百度统计 事件跟踪 js代码怎么写

事件跟踪最核心的方法就是_hmt.push:

_hmt.push(['_trackEvent', category, action, opt_label, opt_value]);

1. '_trackEvent': 固定参数,表明统计类型是时间跟踪。

1. category:要监控的目标的类型名称,通常是同一组目标的名字,比如"视频"、"音乐"、"软件"、"游戏"等等。该项必选。

1. action:用户跟目标交互的行为,如"播放"、"暂停"、"下载"等等。该项必选。

1. opt_label:事件的一些额外信息,通常可以是歌曲的名称、软件的名称、链接的名称等等。该项可选。

1. opt_value:事件的一些数值信息,比如权重、时长、价格等等,在报表中可以看到其平均值等数据。该项可选。

使用

我们有两种方式来使用_html.push方法:

HTML行内使用

a Onclick="_hmt.push(['_trackEvent', 'website', 'click', 'baidu', 1])" href=""百度/a

JS代码中使用

document.getElementById("link").addEventListener("click", function() {

_hmt.push(['_trackEvent', 'website', 'click', 'baidu', 1]);

// ...

});

推荐的方式

这是我一般写统计的方式,比较简单,个人比较推荐:

a data-track="点击百度链接" href=""baidu/a

$("[data-track]").on("click", function() {

var label = $(this).data("track");

window._hmt window._hmt.push(['_trackEvent', label, 'click']);

});

如何用js实现调用手机摄像头扫描条形码然后带出条形码的值到文本框

1、开启沟子的方法代码。

2、指定输入间隔为300毫秒以内时为连续输入方法代码。

3、记录按键信息方法代码。

4、事件的状态代码方法。

5、因为条形码中只有数字和部分符号,所以基本可以不用考虑键盘状态或组合键的情况,但二维码就不能不考虑了。

6、可以使用_keydown.Contains(160)判断是否按下了Shift键,然后使用ShiftChar方法来获取最终的按键对应字符至于结果保存,我使用了一个数组ListListEventMsg,对每次输入都单独进行记录。

js实现COOKIE历史记录 源代码及详解

/** * history_teacher.jsp中的js,最近浏览名师 * @version: 1.0 * @author: mingming */$(function(){ getHistory();});var historyCount=4; //保存历史记录个数/** * 增加浏览历史记录 * @param id 编号 * @param name 姓名 * @param photo 照片 * @param grade 年级 * @param subject 科目 * @return */function setHistory(id,name,photo,grade,subject){ stringCOOKIE=getCOOKIE('history'); var stringHistory=""!=stringCOOKIE?stringCOOKIE:"{history:[]}"; var json=new JSONHistory(stringHistory); //转成json var list = json['history']; //获得json for (var i = 0; i list.length; i++) { try { if(list[i].id == id){ list.splice(i,1); //删除重复数据,开始位置,删除个数 i=i-1; //下标归位 } } catch (e) { break; } } if(list.length=historyCount){ //删除最开始的多余记录 var count = list.length - historyCount + 1; //需要删除的个数 list.splice(0,count); //开始位置,删除个数 } var e="{id:'"+id+"',name:'"+name+"',photo:'"+photo+"',grade:'"+grade+"',subject:'"+subject+"'}"; json['history'].push(e);//添加一个新的记录 setCOOKIE('history',json.toString(),365); //365天}/** * 获得浏览历史记录 * @return */function getHistory(){ var historyJSON=getCOOKIE('history'); if(historyJSON==""){ }else{ var data = eval("("+historyJSON+")"); var history = data['history']; //历史记录 var length = history.length; if(length historyCount){ length = historyCount; } //从最后一个浏览记录开始获取 var historyHtml=""; for ( var i = length-1; i = 0; i--) { historyHtml+= 'dd'+ 'ul'+ 'li class="recimg"a href="'+PATH+"/teacher/teacherinfo?teacherVO.teacherId="+history[i].id+'"img src="'+PATH + "/"+ history[i].photo +'" alt="" //a/li'+ 'li class="recinfo"'+ 'pa href="'+PATH+"/teacher/teacherinfo?teacherVO.teacherId="+history[i].id+'"'+history[i].name+'/a/p'+ 'p class="grayp"科目:'+history[i].subject+'/p'+ 'p class="grayp"年级:'+history[i].grade+'/p'+ '/li'+ '/ul'+ '/dd'; } if(historyHtml!=""){ $("#historyTeacher").html('h2最近浏览名师/h2dl'+historyHtml+'/dl'); } }}/** * 添加COOKIE * @param cookName COOKIE名称 * @param cookName COOKIE值 * @param expiredays 时长 */function setCOOKIE(cookName,cookValue,expiredays){ var exdate=new Date(); exdate.setDate(exdate.getDate()+expiredays*24*3600*1000); var COOKIEVal=cookName+ "=" +escape(cookValue)+((expiredays==null) ? "" : ";expires="+exdate.toGMTString())+";path=/"; document.COOKIE=COOKIEVal;}/** * 获取COOKIE * @param cookName COOKIE名称 * @return */function getCOOKIE(cookName){ if(document.COOKIE.length0){ var c_start = document.COOKIE.indexOf(cookName + "="); if(c_start!=-1){ //存在 c_start = c_start + cookName.length + 1; //"history="后的开始位置 var c_end=document.COOKIE.indexOf(";",c_start); //找到JSESSIONID在的位置 if (c_end==-1){ //JSESSIONID不存在 c_end=document.COOKIE.length; } return unescape(document.COOKIE.substring(c_start,c_end)); } } return "";}/** * JSON */var JSOnHistory= function(sJSON){ this.objType = (typeof sJSON); if(this.objType=='string' ''==sJSON){ sJSON = '{history:[]}' ; } this.self = []; (function(s,o){ for(var i in o){ o.hasOwnProperty(i)(s[i]=o[i],s.self[i]=o[i]) };})(this,(this.objType=='string')?eval('0,'+sJSON):sJSON);};JSONHistory.prototype = { toString:function(){ return this.getString(); }, valueOf:function(){ return this.getString(); }, getString:function(){ var sA = []; (function(o){ var oo = null; sA.push('{'); for(var i in o){ if(o.hasOwnProperty(i) i!='prototype'){ oo = o[i]; if(oo instanceof Array){ sA.push(i+':['); for(var b in oo){ if(oo.hasOwnProperty(b) b!='prototype'){ sA.push(oo[b]+','); if(typeof oo[b]=='object') arguments.callee(oo[b]); } } sA.push('],'); continue; }else{ sA.push(i+':\''+oo+'\','); } if(typeof oo=='object') arguments.callee(oo); } } sA.push('},'); })(this.self); return sA.slice(0).join('').replace(/\[object object\],/ig,'').replace(/,\}/g,'}').replace(/,\]/g,']').slice(0,-1); }, push:function(sName,sValue){ this.self[sName] = sValue; this[sName] = sValue; }};

如何用JS代码来写出每次系统登陆的时候,平台日志就会记录你的所有操作和登陆时间?

JS是运行于客户端的,对服务器的资源没办法进行操作,所以,你这个功能如果单纯靠JS不能实现,只能用Ajax+服务器脚本来实现..

问题是,针对一个记录操作,没必要再搞的这么复杂..因为判断登录永远是在服务器进行逻辑判断的,在此业务逻辑中插入一段代码就可以起到记录操作,而没必要在验证成功后,再用Ajax异步调用另外的页面,实现记录操作..


推荐阅读
  • 深入理解Vue.js:从入门到精通
    本文详细介绍了Vue.js的基础知识、安装方法、核心概念及实战案例,帮助开发者全面掌握这一流行的前端框架。 ... [详细]
  • 深入解析动态代理模式:23种设计模式之三
    在设计模式中,动态代理模式是应用最为广泛的一种代理模式。它允许我们在运行时动态创建代理对象,并在调用方法时进行增强处理。本文将详细介绍动态代理的实现机制及其应用场景。 ... [详细]
  • 实用正则表达式有哪些
    小编给大家分享一下实用正则表达式有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下 ... [详细]
  • Redux入门指南
    本文介绍Redux的基本概念和工作原理,帮助初学者理解如何使用Redux管理应用程序的状态。Redux是一个用于JavaScript应用的状态管理库,特别适用于React项目。 ... [详细]
  • 探讨 HDU 1536 题目,即 S-Nim 游戏的博弈策略。通过 SG 函数分析游戏胜负的关键,并介绍如何编程实现解决方案。 ... [详细]
  • 本文介绍了如何在 Node.js 中使用 `setDefaultEncoding` 方法为可写流设置默认编码,并提供了详细的语法说明和示例代码。 ... [详细]
  • 本文详细介绍了一种通过MySQL弱口令漏洞在Windows操作系统上获取SYSTEM权限的方法。该方法涉及使用自定义UDF DLL文件来执行任意命令,从而实现对远程服务器的完全控制。 ... [详细]
  • 在高并发需求的C++项目中,我们最初选择了JsonCpp进行JSON解析和序列化。然而,在处理大数据量时,JsonCpp频繁抛出异常,尤其是在多线程环境下问题更为突出。通过分析发现,旧版本的JsonCpp存在多线程安全性和性能瓶颈。经过评估,我们最终选择了RapidJSON作为替代方案,并实现了显著的性能提升。 ... [详细]
  • CSS高级技巧:动态高亮当前页面导航
    本文介绍了如何使用CSS实现网站导航栏中当前页面的高亮显示,提升用户体验。通过为每个页面的body元素添加特定ID,并结合导航项的类名,可以轻松实现这一功能。 ... [详细]
  • 本文详细介绍了如何在Kendo UI for jQuery的数据管理组件中,将行标题字段呈现为锚点(即可点击链接),帮助开发人员更高效地实现这一功能。通过具体的代码示例和解释,即使是新手也能轻松掌握。 ... [详细]
  • 深入理解ExtJS:从入门到精通
    本文详细介绍了ExtJS的功能及其在大型企业前端开发中的应用。通过实例和详细的文件结构解析,帮助初学者快速掌握ExtJS的核心概念,并提供实用技巧和最佳实践。 ... [详细]
  • 本文详细介绍了如何在 Android 中使用值动画(ValueAnimator)来动态调整 ImageView 的高度,并探讨了相关的关键属性和方法,包括图片填充后的高度、原始图片高度、动画变化因子以及布局重置等。 ... [详细]
  • 解决Spring Boot项目创建失败的问题
    在尝试创建新的Spring Boot项目时遇到了一些问题,具体表现为在项目创建过程中的两个关键步骤出现错误。本文将详细探讨这些问题及其解决方案。 ... [详细]
  • 本文探讨了在构建应用程序时,如何对不同类型的数据进行结构化设计。主要分为三类:全局配置、用户个人设置和用户关系链。每种类型的数据都有其独特的用途和应用场景,合理规划这些数据结构有助于提升用户体验和系统的可维护性。 ... [详细]
  • Linux中的yum安装软件
    yum俗称大黄狗作用:解决安装软件包的依赖关系当安装依赖关系的软件包时,会将依赖的软件包一起安装。本地yum:需要yum源,光驱挂载。yum源:(刚开始查看yum源中的内容就是上图 ... [详细]
author-avatar
荷-蘭水
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有