jQuery 用のカスタム プラグインを作成しました。
.social-box
誰かがその外側をクリックすると非表示にしたい。
div
その外側をクリックした場合に非表示にするには、次のソリューションが必要です。
jQuery を使用して、ユーザーが DIV の外側をクリックしたときに DIV を非表示にします
しかし、それは使用していmouseup()
ます。
ですから、以下のプラグインに mouseup() を追加する方法を教えてください:
(function($){
$.fn.extend({
doAjax: function(options) {
var defaults = {
ajaxurl: ajaxurl,
action: '',
};
var options = $.extend(defaults, options);
return this.each(function() {
var o =options;
var obj = $(this);
var a = $('a', obj);
// load FB like box
function call_ajax(){
var ajax = $.ajax({ type: 'POST', url: o.ajaxurl, data: { action: o.action }, dataType: 'html' });
ajax.done(function(msg) {
obj.children('.social-box').append(msg);
});
}
// toggle social box
a.click(function(e) {
e.preventDefault();
obj.children('.social-box').slideToggle('fast');
if ($(this).data('loaded') == 'no'){
call_ajax();
$(this).data('loaded', 'yes');
}
});
});
}
});
})(jQuery);