`
suyang119
  • 浏览: 16842 次
社区版块
存档分类
最新评论

js四舍五入 IEresize事件反复执行 解决方法 以备后用

阅读更多

//js四舍五入的方法
//保留小数点后两位
// var n = 12.7768;
// var m = ForDight(n,2);
function ForDight(Dight,How) {
Dight = Math.round(Dight*Math.pow(10,How))/Math.pow(10,How);
return Dight;
}

//对IE中窗口的resize事件会执行N次的解决方法

var debounce = function (func, threshold, execAsap) { 
  var timeout; 
  return function debounced () { 
      var obj = this, args = arguments; 
      function delayed () { 
          if (!execAsap) 
          func.apply(obj, args); 
          timeout = null; 
      }; 
      if (timeout) 
          clearTimeout(timeout); 
      else if (execAsap) 
          func.apply(obj, args); 
      timeout = setTimeout(delayed, threshold || 100); 
  }; 
}


debounce 接受 3 个参数,后两个可选;
第一个是要 debounce 的函数;
第二个代表 debouce 的时间间隔;
第三个在时间段的开始还是结束执行函数;
返回包装好的函数debounce,该函数两次执行间隔至少是 threshold,并且小于 threshold 间隔的调用会重新开始计时( 两次调用的时间间隔);
把 clearTimeout( timeout ) 换为 timer = null; 返回函数两次执行间隔至少是 threshold,并且小于 threshold 间隔的调用会重新开始计时( 两次调用的时间间隔);


// 解决 onresize 多次调用
window.onresize = debounce( function(){
    alert( 'hello world');
}, 100, true)
// 在自动补齐中为了减少请求服务器次数也会用到 debounce, 只有连续敲键间隔大于某个值才会发送 ajax
window.onresize = debounce( function(){ 
    var w = document.body.clientWidth-5;
    var h = document.body.clientHeight-30;
    FixTable("MyTable", 1, w, h);
}, 100, true)
分享到:
评论

相关推荐

    JS实现四舍六入五单双

    在某些行业,计算结果不是四舍五入,而是要求四舍六入五单双,且小数位数不固定,只明确有效位数。本程序就是应此需求而设计,输入原始数字和有效位数要求,则可返回按四舍六入后的结果。

    Javascript四舍五入(一)源码

    `Math.round()`函数是JavaScript内置的一个数学方法,用于对数字进行四舍五入处理。此函数接收一个参数,即需要进行四舍五入操作的数值。该函数会返回最接近给定数字的整数。如果参数距离两个整数等距,则会向较大的...

    浏览器窗口大小变化时使用resize事件对框架不起作用的解决方法

    浏览器窗口大小变化时使用resize事件对框架不起作用的解决办法,如下: 代码如下:$(window).resize(function(){var surH = $(window).height();$(“.pic_conent”).height(surH);} 当浏览器变化,拉大拉小时,没有...

    C#.NET,JAVASCRIPT数字进行四舍五入保留两位小数

    这里我们将深入探讨C#.NET和JavaScript中如何实现数字四舍五入并保留两位小数的方法。 首先,让我们看看C#.NET中的解决方案。在C#中,我们可以使用`Math.Round`方法来实现四舍五入。这个方法接受一个double类型的值...

    JavaScript中用于四舍五入的Math.round()方法讲解

    此方法返回一个数四舍五入为最接近的整数的值。 语法 Math.round( x ) ; 下面是参数的详细信息: x: 一个数字 返回值: 返回数字四舍五入为最接近的整数的值。 例子: <html> <head> <title>...

    IE8的JavaScript点击事件(onclick)不兼容的解决方法

    根据提供的内容,文章介绍了一种解决该问题的方法,即通过`document.createElement`创建新元素后,手动将事件处理函数赋值给元素的onclick属性,并使用`eval`函数执行这段代码。尽管这种方法可以工作,但使用`eval`...

    JavaScript里四舍五入函数round用法实例

    5. round函数与其他四舍五入方法的比较:在JavaScript中,除了round方法外,还有其他几种方法用于处理数字的四舍五入,如Math.floor()和Math.ceil()。Math.floor()方法是向下取整,无论小数部分是多少,都舍去小数...

    js四舍五入数学函数round使用实例

    JavaScript中的数学对象Math提供了一个非常实用的四舍五入方法——round函数。该函数可以用于将数字四舍五入到最接近的整数。如果小数部分是.5或更高,它会向更高的方向四舍五入;如果小于.5,则向更低的方向四舍五...

    js实现四舍五入完全保留两位小数的方法

    标题中提到的是“js实现四舍五入完全保留两位小数的方法”,这指的是在JavaScript编程语言中,如何编写函数来确保数字在进行四舍五入后,不论小数部分是大于还是小于两位数字,最终结果都能被格式化为恰好两位小数的...

    JS实现保留n位小数的四舍五入问题示例

    JavaScript中的Math对象提供了四舍五入的方法Math.round(),该方法可以将数字四舍五入到最接近的整数。然而,直接使用Math.round()并不能满足保留小数位的需求。因此,需要通过一些数学运算来扩展这个功能,使得可以...

    JavaScript实现基于十进制的四舍五入实例

    在JavaScript中,四舍五入的实现通常是通过Math对象提供的方法来完成的。然而,有时候开发者可能需要实现一个自定义的四舍五入函数,用于特定的场景或是为了更细致地控制四舍五入的行为。本文将详细介绍如何使用...

    js要四舍五入且保留两位或N位有效数字或取整.pdf

    在JavaScript中,处理数字的四舍五入以及保留指定位数的有效数字是常见的需求,尤其对于前端开发者来说。本文将详细介绍两种主要的方法:`toFixed()` 和 `Math.round()`,以及它们在保留有效数字和取整方面的应用。 ...

    IE6浏览器下resize事件被执行了多次解决方法

    在IE浏览器下,一次resize事件被执行了多次。这是IE6和IE7的一个比较广为认知的问题,这个问题在这两个版本的浏览器中表现有所不同,通常IE6下会比IE7下更为糟糕。 现在已经有了一个较好的解决方案,让jquery....

    javascript页面加载完执行事件代码

    掌握页面加载完毕后执行JavaScript代码的方法对于开发者来说至关重要。本文将深入探讨如何在页面加载完成后执行特定的JavaScript事件代码,以及在实现此功能时需要注意的几个关键点。 首先,介绍页面加载状态的判断...

    ie不执行javascript修复

    ie不执行javascript修复ie不执行javascript修复ie不执行javascript修复 当IE不能正常运行时,打开该工具就可以了,自动修复

    特殊数据的js四舍五入问题

    在JavaScript中,四舍五入问题常常出现在处理浮点数时,由于计算机内部表示浮点数的方式(基于二进制的IEEE 754标准)可能导致精度损失,从而造成四舍五入结果不符合预期。标题和描述中提到的“特殊数据的js四舍五入...

    Javascript四舍五入Math.round()与Math.pow()使用介绍

    代码如下: <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML... <head> <title>Javascript四舍五入(Math.round()与Math.pow())</title> [removed] //Math.round(x);返回数字最接近的整数,四舍五入取整

    修复ie8&chrome下window的resize事件多次执行

    在JavaScript编程中,`window.resize`事件是一个非常常见的场景,它用于监听浏览器窗口大小的变化。然而,在某些浏览器,尤其是IE8及以下版本和Chrome中,原生的`window.onresize`事件可能会出现多次执行的问题,这...

    js常用方法(js常用鼠标事件和其对应的方法)

    JavaScript(简称JS)是一种轻量级的脚本语言,常用于网页交互和动态网页开发。在JavaScript中,处理用户交互的常见方式之一是利用鼠标事件。以下是一些JS常用的鼠标事件及其对应的方法: 1. `click`:当用户点击...

    js数字舍入误差以及解决方法(必看篇)

    JavaScript中的数字舍入误差主要源于计算机内部以二进制表示浮点数的机制。在JavaScript中,所有数字都是以IEEE 754双精度浮点数格式存储的,这种格式有64个位来表示一个数字,其中包括1位符号位、11位指数位和52位...

Global site tag (gtag.js) - Google Analytics