jQuery中的$ .confirm或confirm()?

时间:2016-01-09 21:07:03

标签: jquery

在插件中调用$ .confirm和confirm()有什么区别?

var jconfirm, Jconfirm;
(function ($) {
    "use strict";
    $.fn.confirm = function (options) {
        if(typeof options === 'undefined') options = {};
        /*
         *  Alias of jconfirm to emulate native confirm
         */
        var $this = $(this);
        $this.on('click', function (e) {
            e.preventDefault();
            if ($this.attr('href'))
                options['confirm'] = function () {
                    location.href = $this.attr('href');
                };
            $.confirm(options);
        });
        return $this;
    };
    $.confirm = function (options) { <-- HERE
        /*
         *  Alias of jconfirm
         */
        return jconfirm(options);
    };

1 个答案:

答案 0 :(得分:0)

首先$.confirm()confirm()

confirm()是一个内置的JavaScript函数,它返回一个布尔值:

$.confirm由用户/插件使用以下方式定义:

$.confirm = function () {
  // stuff
}

// or using $.fn.extend.
$.fn.extend({
    confirm: function(options) {
        var defaults = {
        };
        options = $.extend(defaults, options);
        return this;
    }
});

<强>解决方案

在jConfirm的情况下,它使用回调函数。所以无论你做什么都需要使用回调函数来完成:

jConfirm('Some Title', 'Are you sure you want to delete your profile photo?', function(r) {
  // here `r` will be `true` or `false`.
  alert(r);
});