嗨我正在使用jquery。
我有一个复选框点击事件
jQuery('.btn-check-box').click(function () {
//code goes here .
});
问题是点击事件需要相当长的时间才能完成。有些时候浏览器会卡住。 所以我想改变函数内部的代码并减少完成时间。
现在我想获得当前点击活动的完成时间。 然后更改代码并再次检查完成时间。
所以我可以根据完成时间优化我的代码。
有没有办法检查活动完成时间。 请帮忙。 提前谢谢。
答案 0 :(得分:6)
将事件作为参数传递。
var createdTime;
jQuery('.btn-check-box').click(function(e){
createdTime = e.timeStamp;
}).done(function(){ calculate time difference });
如果您将使用console.log(e)
,那么它将显示jQuery已经在触发事件时传递时间戳。
所以现在你需要找到一种方法甚至完成所以.done()
jQuery方法将帮助你。
在.done()方面,您也可以获得相同的e.timestamp
并进行一些数学计算,以便在第二,几分钟或任何时间内获得所需的输出。
答案 1 :(得分:1)
像SrinivasR所说,完成时间 - 开始时间。
jQuery('.btn-check-box').click(function () {
var t0 = (new Date()).getTime();
//code goes here
console.log("Event took",(new Date()).getTime() - t0, "ms to complete.");
});
答案 2 :(得分:1)
请尝试以下代码
jQuery('.btn-check-box').click(function () {
var secondStart = new Date().getTime() / 1000;
// Your code goes here .
var secondEnd = new Date().getTime() / 1000;
var totalTime = secondEnd - secondStart;
console.log('Executing took' +totalTime +'seconds' )
});