javascript - Jquery插件开发问题,返回一个监听事件
本文介绍了javascript - Jquery插件开发问题,返回一个监听事件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
想自己开发一个JQ插件,但现在遇到点小问题,麻烦有经验的朋友指点下:
(function ($, w) {
$.fn.center = function () {
this.css({
// 各种CSS代码,操作元素位置
});
return (function (e) {
$(w).resize(function () {
e.css({
// 重置CSS样式
});
})
})(this);
};
})(jQuery, window);
我想返回一个浏览器大小监听事件,这里还有更好或者说简单的写法吗?
解决方案
e.target不行吗?
或者
按照你的写法应该再加一个return
return (function (e) {
return $(w).resize(function (e) {
e.css({
'top':($(w).height() - e.outerHeight())/2,
'left': 'block'
});
})
})(this);
而且你的内部并没有用到this呀
我怎么感觉你直接这样写就行了?返回事件绑定的原因是什么?直接绑定不可以吗?
我刚刚明白你的意思- -。
是要在window的resize事件里操作调用center的dom对象。
//这么写行不行(可能还得$包装一下),闭包传this好像传不进去,也可能是我没想到。
(function ($, w) {
$.fn.center = function () {
this.css({
// 各种CSS代码,操作元素位置
});
_this = this;
$(w).resize(function (e) {
_this.css({
// 重置CSS样式
});
})
};
})(jQuery, window);
这篇关于javascript - Jquery插件开发问题,返回一个监听事件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文