Это мои параметры плагина Jquery до сих пор:JQuery расширения() в простираться()
function lightbox(options)
{
// setting default parameters
var params = $.extend(
{
// show/hide & enable/disable options
keyNav : true, // boolean
objClickNav: false, // boolean
showNav : true, // boolean
showTitle : true, // boolean
showPagination : true, // boolean
debugMode : false, // boolean
disableScrolling : true, // boolean
fullscreen : false, // boolean
autoScale : true, // boolean
staticHeight: 'auto', // integer or 'auto'
staticWidth: 'auto', // integer or 'auto'
// content options
contentType : 'image', // defines the type of content shown in the lightbox
// options: 'image'
animationType : 'default', // defines the type of animation when switching objects
// options: 'default', 'slide'
}, options);
}
я не мог найти ответ в любом месте в Интернете, так вот почему я спрашиваю его здесь. Я хочу, чтобы иметь extend()
внутри текущего extend()
, так что я могу объявить свой плагин, как это:
lightbox({
keyNav : true,
showNav : false,
scale({
autoScale : false,
staticHeight : 800,
})
content({
contentType : 'image',
animationType : 'slide',
})
});
Что такое правильный способ сделать это?
Вы должны создать объекты установки по умолчанию с той же структурой, что и параметры, переданные в плагин, тогда вы можете просто «$ .extend» его. Теперь у вас есть плоский объект по умолчанию, а затем вдруг вводится вложенный объект, у вас будет много проблем с повторением и выяснением того, что происходит, вместо того, чтобы просто сделать их одинаковой структурой для Начать с. – adeneo
Может быть, вы могли бы объяснить на примере? –