gpt4 book ai didi

javascript - 如何使用 onstart 和 oncomplete 创建 jquery 函数

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:36:08 24 4
gpt4 key购买 nike

我正在尝试创建自己的 jquery 函数,我知道如何添加选项但不知道如何添加“onStart”或“onComplete”功能。

这是我目前所知道的:

jQuery.somefunctionname = function (options) {
var settings = {},
defaults = {
'someoption': 'somevalue',
'someoption2': 'somevalue2',
'someoption3': 'somevalue3'
}
settings = $.extend({}, defaults, options);

//do something functional
alert("hey i'm a function");
}

但是如果我希望用户能够在我的函数之前 (onStart) 和之后 (onComplete) 添加他们自己的代码,我应该编写什么代码?

用户应该可以这样写:

$.somefunctionname({
'someoption' : 'a',
'someoption2' : 'b',
'someoption3' : 'c',

'onStart' : function() {
//whatever user want when my function started
},
'onComplete' : function() {
//whatever user want when my function ended
} });

谢谢;)

最佳答案

在你的函数中,做这样的事情:

jQuery.somefunctionname = function (options) {
if (typeof options.onStart === "function")
options.onStart.call(this);

// other function code here

if (typeof options.onComplete === "function")
options.onComplete();
// OR
options.onComplete.call(this);
// OR
options.onComplete.apply(this, argsArrayIfDesired);
// etc.
};

也就是说,如果该属性在 options 中定义并且实际上是一个函数,则在适当的位置调用它。如果需要,使用 .call().apply()this 指定设置,并包含任何参数。根据需要与您的设置对象集成或不集成。

关于javascript - 如何使用 onstart 和 oncomplete 创建 jquery 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11625402/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com