jquery技巧之div绑定resize10:30
2017-04-25 10:30
337 查看
jquery 默认的resize只能监听到浏览器窗口大小的改变,但我们在实际使用过程中有可能还需要监听某个div或其它标签的大小改变来执行相应的处理,如果使用默认的resize就无能为力了。
然后在文件中引入改包就可以给div绑定resize事件了
解决方法: 新建一个js文件,写入如下代码:
(function($,h,c){var a=$([]),e=$.resize=$.extend($.resize,{}),i,k="setTimeout",j="resize",d=j+"-special-event",b="delay",f="throttleWindow";e[b]=250;e[f]=true;$.event.special[j]={setup:function(){if(!e[f]&&this[k]){return false}var l=$(this);a=a.add(l);$.data(this,d,{w:l.width(),h:l.height()});if(a.length===1){g()}},teardown:function(){if(!e[f]&&this[k]){return false}var l=$(this);a=a.not(l);l.removeData(d);if(!a.length){clearTimeout(i)}},add:function(l){if(!e[f]&&this[k]){return false}var n;function m(s,o,p){var q=$(this),r=$.data(this,d);r.w=o!==c?o:q.width();r.h=p!==c?p:q.height();n.apply(this,arguments)}if($.isFunction(l)){n=l;return m}else{n=l.handler;l.handler=m}}};function g(){i=h[k](function(){a.each(function(){var n=$(this),m=n.width(),l=n.height(),o=$.data(this,d);if(m!==o.w||l!==o.h){n.trigger(j,[o.w=m,o.h=l])}});g()},e[b])}})(jQuery,this);
然后在文件中引入改包就可以给div绑定resize事件了
相关文章推荐
- jquery动态添加删除div--事件绑定,对象克隆
- 关于jQuery新的事件绑定机制on()的使用技巧
- 扩展Jquery的resize方法(原生的resize只针对window,因项目需要扩展了此方法,目前只在DIV上使用过,后续如果修改代码会对此代码进行更新)
- jquery resize 如何监听div或其它元素的resize事件
- jquery 监听div大小变化函数|div resize事件
- jquery 为整个页面绑定click事件,获得当前所在div
- jQuery刷新div内容,并对刷新后元素绑定事件。$(document).on()
- 关于jQuery新的事件绑定机制on()的使用技巧
- 关于jQuery新的事件绑定机制on()的使用技巧
- jquery下div 的resize事件示例代码
- 调用jquery的resize方法改变div的宽度和高度在IE中不变,在谷歌中可以正常显示
- WEB前端技巧之JQuery为动态添加的元素绑定事件.md
- 关于jQuery新的事件绑定机制on()的使用技巧
- jquery div 居中技巧应用介绍
- 调用jquery的resize方法改变div的宽度和高度在IE中不变,在谷歌中可以正常显示
- 关于jQuery新的事件绑定机制on()的使用技巧
- jQuery 新的事件绑定机制on的使用技巧
- jquery div 居中技巧应用介绍
- 【jQuery】关于jQuery新的事件绑定机制on()的使用技巧