【发布时间】:2019-12-14 12:37:41
【问题描述】:
我正在创建一个基于 Jquery 和 Bootrap(最新版本)的插件,由该方法/代码调用:
$(document).find('.calendar-plug-bs').each(function(index, el) {
//$(this).plgCalendar("destroy"); Testing for destroy if exist...
$(this).plgCalendar();
})
它与这样的元素一起使用:
<div class="form-group row">
<div class="calendar-plug-bs"></div>
</div>
并且这个脚本/插件开始如下......
(function($) {
$.fn.plgCalendar = function(param) {
return window.plgCalendar(param);
};
}(jQuery));
但问题是我需要调用初始函数的检索节点...
|------|
$(this).plgCalendar();
在其中添加一个表格...
function plgCalendar(param = null) {
var r = null;
if (param !== null) {
if (typeof param.func !== 'undefined') {
if (param.func === "destroy") {
} else if (param.func === "getValue") {
}
} else {
console.log('%cMSG: (func) not Set', 'color: #bada55');
}
} else {
/*****WORKING ON THIS***/
var target = $(this);
console.log(target);
if (target.is("div")) {
var id = window.BuildRandID();
var $tableObject = $('<table/>', {
'class': 'bigger',
'id': id
});
$(target).append($tableObject);
return id;
} else {
window.alert("calendar-plug-bs must be a div");
}
/*****WORKING ON THIS***/
}
return r;
}
失败是 var taget 不是一个 div...我不知道如何检索...
【问题讨论】:
-
您是否尝试将您的函数直接放入您的插件中,例如:
$.fn.plgCalendar = function(param) { function plgCalendar(param) { ... }; };? -
不,我喜欢设置它,因为任何人都需要访问 JQuery 对象。
标签: javascript jquery plugins jquery-plugins