最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

jquery如何解決resize執(zhí)行兩次的問題

 更新時(shí)間:2023年07月04日 14:07:45   作者:暖陽 (*◎v◎*)  
這篇文章主要介紹了jquery如何解決resize執(zhí)行兩次的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

jquery解決resize執(zhí)行兩次問題

代碼如下(示例):

? ? // - 解決resize執(zhí)行兩次的問題
? ? var n = 0;
? ? jQuery(window).resize(function () {
? ? ? n++;
? ? ? if (n % 2 == 0) {
? ? ? ? n = 0;
? ? ? ? //todo
? ? ? ? // console.log("todo");
? ? ? }
? ? ? // console.log(n);
? ? });

谷歌瀏覽器在測(cè)試時(shí),當(dāng)窗口發(fā)生改變時(shí),resize()函數(shù)有時(shí)會(huì)執(zhí)行一次,有時(shí)會(huì)執(zhí)行兩次,所以改進(jìn)為下面代碼。

var resizeTimer = null;
jQuery(window).resize(function () {
?? ?if (resizeTimer) clearTimeout(resizeTimer);
?? ?resizeTimer = setTimeout(function () {
?? ?// console.log("窗體發(fā)生改變了");
?? ?//todo
?? ?}, 100);
});

擴(kuò)展Jquery的resize方法

(原生的resize只針對(duì)window,因項(xiàng)目需要擴(kuò)展了此方法,目前只在DIV上使用過,后續(xù)如果修改代碼會(huì)對(duì)此代碼進(jìn)行更新)

/**
?* 封裝非Window對(duì)象的resize方法
?* callback:回調(diào)函數(shù)(長(zhǎng)寬發(fā)生變化時(shí)觸發(fā))
?*/
$.fn.divResize=function(callback, setting){
? ?var cycleTime = 250; // 定義監(jiān)控大小變化的時(shí)間
? ?if(setting&&setting.cycleTime){
? ? ? cycleTime = setting.cycleTime;
? ?}
? ?if(callback==undefined||callback==null){
? ? ? return;
? ?}
? ?if(!(typeof callback == "function")){
? ? ? return;
? ?}
? ?$(this).each(function(){
? ? ? var resizeDom = this;
? ? ? resizeDom.data = {};
? ? ? resizeDom.data.width = $(resizeDom).css("width"); // 存放當(dāng)前寬度
? ? ? resizeDom.data.height = $(resizeDom).css("height"); // 存放當(dāng)前高度
? ? ? resizeDom.callback = callback;
? ? ? // 定義監(jiān)控函數(shù)
? ? ? var resizeMonitor = function(){
? ? ? ? ?// 判斷高度和寬度是否發(fā)生變化
? ? ? ? ?if($(resizeDom).css("width")!=resizeDom.data.width||$(resizeDom).css("height")!=resizeDom.data.height){
? ? ? ? ? ? resizeDom.data.width = $(resizeDom).css("width");
? ? ? ? ? ? resizeDom.data.height = $(resizeDom).css("height");
? ? ? ? ? ? resizeDom.callback();
? ? ? ? ?}
? ? ? ? ?var callFunc = arguments.callee; // 獲取本身函數(shù)
? ? ? ? ?setTimeout(function(){callFunc();}, cycleTime);
? ? ? };
? ? ? resizeMonitor();
? ?});
};
/**
?* 擴(kuò)展resize方法(可支持window和非window對(duì)象)
?* callback:回調(diào)函數(shù)(長(zhǎng)寬發(fā)生變化時(shí)觸發(fā))
?*/
? ?$.fn.resizeOld = $.fn.resize;
$.fn.resize=function(callback, setting){
? ?$(this).each(function(){
? ? ? ? ? ?var resizeDom = this;
? ? ? ?// 確定綁定的對(duì)象是否是window
? ? ? ? ? ?if (this == window) {
? ? ? ? ? ? ? ?$(window).resizeOld(function () {
? ? ? ? ? ? ? ? ? ?callback();
? ? ? ? ? ? ? ?});
? ? ? ? ? ?} else {
? ? ? ? ? ? ? ?resizeDom.callback = callback;
? ? ? ? ? ? ? ?$(this).divResize(callback, setting);
? ? ? ? ? ?}
? ?});
};

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 基于jQuery實(shí)現(xiàn)仿淘寶套餐選擇插件

    基于jQuery實(shí)現(xiàn)仿淘寶套餐選擇插件

    本文給大家介紹的是一款基于jQuery實(shí)現(xiàn)放淘寶套餐選擇的插件,主要是基于本地json數(shù)據(jù)的選擇列創(chuàng)建,有需要的小伙伴參考下。
    2015-03-03
  • jquery實(shí)現(xiàn)簡(jiǎn)單的全選和反選功能

    jquery實(shí)現(xiàn)簡(jiǎn)單的全選和反選功能

    我們?cè)谧鲰?xiàng)目的時(shí)候,經(jīng)常需要實(shí)現(xiàn)全選和反選功能,到網(wǎng)上搜了一圈,發(fā)現(xiàn)網(wǎng)上寫的全選的代碼,不是完整的,是有bug的。下面結(jié)合自己的項(xiàng)目給大家分享下。
    2016-01-01
  • 使用jquery插件實(shí)現(xiàn)圖片延遲加載技術(shù)詳細(xì)說明

    使用jquery插件實(shí)現(xiàn)圖片延遲加載技術(shù)詳細(xì)說明

    有時(shí)我們看到一些大型網(wǎng)站,頁面如果有很多圖片的時(shí)候,當(dāng)你滾動(dòng)到相應(yīng)的行時(shí),當(dāng)前行的圖片才即時(shí)加載的,這樣子的話頁面在打開只加可視區(qū)域的圖片,而其它隱藏的圖片則不加載,一定程序上加快了頁面加載的速度,對(duì)于比較長(zhǎng)的頁面來說,這個(gè)方案是比較好的。
    2011-03-03
  • jquery讀寫cookie操作實(shí)例分析

    jquery讀寫cookie操作實(shí)例分析

    這篇文章主要介紹了jquery讀寫cookie操作,結(jié)合實(shí)例形式分析了jQuery針對(duì)cookie的常用讀寫操作技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-12-12
  • jQuery中parent()方法用法實(shí)例

    jQuery中parent()方法用法實(shí)例

    這篇文章主要介紹了jQuery中parent()方法用法,實(shí)例分析了parent()方法的功能、定義及取得緊鄰父元素的使用技巧,需要的朋友可以參考下
    2015-01-01
  • jQuery實(shí)現(xiàn)為動(dòng)態(tài)添加的元素綁定事件實(shí)例分析

    jQuery實(shí)現(xiàn)為動(dòng)態(tài)添加的元素綁定事件實(shí)例分析

    這篇文章主要介紹了jQuery實(shí)現(xiàn)為動(dòng)態(tài)添加的元素綁定事件,結(jié)合實(shí)例形式分析了jQuery常見的事件綁定相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下
    2018-09-09
  • jcarousellite.js 基于Jquery的圖片無縫滾動(dòng)插件

    jcarousellite.js 基于Jquery的圖片無縫滾動(dòng)插件

    基于Jquery的圖片無縫滾動(dòng)插件,需要的朋友可以參考下。
    2010-12-12
  • 基于jQuery的自動(dòng)完成插件

    基于jQuery的自動(dòng)完成插件

    感覺這個(gè)東西很常用,很多其它js框架里有,但是太大了,用不了太多,自己寫了個(gè)。需要的朋友可以參考下。
    2011-02-02
  • 創(chuàng)建自己的jquery表格插件

    創(chuàng)建自己的jquery表格插件

    這篇文章主要介紹了一個(gè)自己創(chuàng)建的jquery表格插件,實(shí)現(xiàn)了基本的json數(shù)據(jù)的動(dòng)態(tài)加載,自動(dòng)分頁,全選全不選,鼠標(biāo)懸浮變色,隔行變色等,感興趣的小伙伴們可以參考一下
    2015-11-11
  • jQuery簡(jiǎn)單注冊(cè)和禁用全局事件的方法

    jQuery簡(jiǎn)單注冊(cè)和禁用全局事件的方法

    這篇文章主要介紹了jQuery簡(jiǎn)單注冊(cè)和禁用全局事件的方法,結(jié)合實(shí)例形式分析了jQuery中ajaxStart與ajaxStop方法的使用技巧,需要的朋友可以參考下
    2016-07-07

最新評(píng)論

凯里市| 固镇县| 高州市| 呼伦贝尔市| 南雄市| 丽江市| 尖扎县| 平利县| 南康市| 隆化县| 莫力| 台州市| 古田县| 岑溪市| 黔江区| 常山县| 新泰市| 梁山县| 南安市| 定陶县| 宿州市| 北票市| 迁安市| 平原县| 和田县| 大洼县| 酒泉市| 美姑县| 望奎县| 盐亭县| 纳雍县| 垣曲县| 石首市| 奉新县| 无为县| 山西省| 阿合奇县| 盐边县| 呼玛县| 嘉义县| 札达县|