我有一个如下所示的Javascript库
(function ($) {
var gd_navbar = '#gd-navbar';
var methods = {
init: function (options) {
// set defaults
var defaults = {
applicationPath: null,
//More Data
enableRightClick: true
};
options = $.extend(defaults, options);
// set global option params
applicationPath = options.applicationPath;
preloadPageCount = options.preloadPageCount;
rewrite = options.rewrite;
htmlMode = options.htmlMode;
thumbnails = options.thumbnails;
saveRotateState = options.saveRotateState;
enableRightClick = options.enableRightClick;
// assembly html base
this.append(getHtmlBase);
this.append(getHtmlModalDialog);
}
};
function getHtmlNavThumbTogglePanel() {
return '<li id="gd-nav-right"><i class="fa fa-th-large"></i><span class="gd-tooltip">Thumbnails</span></li>';
}
})(jQuery);
现在我正在尝试执行称为
getHtmlNavThumbTogglePanel()
的函数所以我只写下面的代码
$.getHtmlNavThumbTogglePanel()
但我收到以下错误
$ .getHtmlNavThumbTogglePanel不是函数
我也尝试了以下
jQuery.getHtmlNavThumbTogglePanel()
但我仍然遇到同样的错误,
要使用这些功能,我需要做什么?
最佳答案
您的getHtmlNavThumbTogglePanel
当前只是IIFE中的普通变量名称-在其他任何地方都无法访问。
如果您希望它在jQuery中可用,请将其分配给$
:
$.getHtmlNavThumbTogglePanel = function getHtmlNavThumbTogglePanel() {
return '<li id="gd-nav-right"><i class="fa fa-th-large"></i><span class="gd-tooltip">Thumbnails</span></li>';
}
但是,它当前仅返回一个字符串,这有点奇怪-您是否要返回包装在jQuery对象中的新元素?
$.getHtmlNavThumbTogglePanel = function getHtmlNavThumbTogglePanel() {
return $('<li id="gd-nav-right"><i class="fa fa-th-large"></i><span class="gd-tooltip">Thumbnails</span></li>');
}