嗨,我正在使用 jquery。
我有一个复选框点击事件
jQuery('.btn-check-box').click(function () {
//code goes here .
});
问题是点击事件需要相当长的时间才能完成。有时浏览器会卡住。所以我想更改函数内部的代码并减少完成时间。
现在我想获取我当前的点击事件完成时间。然后更改代码并再次检查完成时间。
所以我可以根据完成时间优化我的代码。
有什么方法可以检查事件完成时间。 请帮忙。提前致谢。
嗨,我正在使用 jquery。
我有一个复选框点击事件
jQuery('.btn-check-box').click(function () {
//code goes here .
});
问题是点击事件需要相当长的时间才能完成。有时浏览器会卡住。所以我想更改函数内部的代码并减少完成时间。
现在我想获取我当前的点击事件完成时间。然后更改代码并再次检查完成时间。
所以我可以根据完成时间优化我的代码。
有什么方法可以检查事件完成时间。 请帮忙。提前致谢。
将事件作为参数传递。
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
的结果并进行一些数学运算,以在秒、分钟或任何时间内得到您想要的输出。
就像 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.");
});
尝试以下代码
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' )
});