Javascript Jquery插件的动态数组
我正在构建一个简单的JQuery插件,用户可以在其中构建包含标题、字幕和文本的模块 我想让用户能够在一个插件调用中向模块添加多个元素Javascript Jquery插件的动态数组,javascript,jquery,html,Javascript,Jquery,Html,我正在构建一个简单的JQuery插件,用户可以在其中构建包含标题、字幕和文本的模块 我想让用户能够在一个插件调用中向模块添加多个元素 var methods = { build : function( options ) { var settings = $.extend( { 'header' : 'Untitled', 'subtitle' : 'Subtitle', 'content' : 'Lorem ipsum do
var methods = {
build : function( options ) {
var settings = $.extend( {
'header' : 'Untitled',
'subtitle' : 'Subtitle',
'content' : 'Lorem ipsum dolor amet...',
'img' : '' //img URL
}, options);
//Create the div to hold elements
var box = $('<div/>', {
class: 'service'
}).appendTo(this);
//Populate div with header
$('<h2/>', {
class: 'service-title',
text: settings.header
}).appendTo(box);
//Check for subtitle
if(settings.subtitle != 'Subtitle') {
$('<h4/>', {
class: 'service-sub',
text: settings.subtitle
}).appendTo(box);
}
//Add body text
$('<p/>', {
class: 'service-text',
text: settings.content
}).appendTo(box);
//Check for image
if(settings.img != '') {
$('<img/>', {
class: 'service-img',
src: settings.img
}).appendTo(box);
}
},
add : function() {
}
};
$.fn.service = function( method ) {
if ( methods[method] ) {
return methods[ method ].apply( this, Array.prototype.slice.call( arguments, 1));
} else if ( typeof method === 'object' || ! method ) {
return methods.build.apply( this, arguments );
} else {
$.error( "Method " + method + " does not exist for the Servicer" );
}
};
})( jQuery );
在变量设置中的subtitle下,我希望允许用户在一次调用中添加多个字幕。service允许用户将subtitle选项设置为数组而不是字符串。测试它是字符串还是数组,如果是数组,则运行循环