关于如何监听div大小的变化,jquery扩展函数
2019-05-09 15:03
453 查看
[code](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);
这样就可以和$(windows).resize(function(){})一样 4000 实现监听div大小的变化。
如:
$('tag').resize()
相关文章推荐
- 关于如何监听div大小的变化,jquery扩展函数
- JQuery如何监听DIV内容变化
- jquery 如何监听div内容的变化
- JQuery如何监听DIV内容变化
- jquery 如何监听div内容的变化
- jquery 监听div大小变化函数|div resize事件
- jquery 如何监听div内容的变化
- jquery 如何监听div内容的变化
- jquery 监听div大小变化函数|div resize事件
- JQuery如何监听DIV内容变化
- JQuery如何监听DIV内容变化
- jquery监听div等元素的内容变化
- 使用jQuery监听DOM元素大小变化
- 如何让一个div的大小,从某一个特定值开始,随内容的增加而自动变化?
- 关于如何更好的监听元素属性的变化(转)
- jQuery监听浏览器窗口大小的变化实例
- jquery resize 如何监听div或其它元素的resize事件
- jquery监听div内容的变化具体实现思路
- jquery 监听div内容变化
- 用JS或者jQuery监听 浏览器窗口大小的变化事件