2016-07-23 1 views
0

Ich benutze ein Lightbox jQuery-Plugin, das ich in verschiedenen Kontexten mit verschiedenen Einstellungen neu initialisieren muss, und ich frage mich, ob es eine Möglichkeit gibt, einen Standardsatz von Einstellungen zu speichern, einschließlich Optionen und Callback-Funktionen-- sagen wir, in Form einer Variablen oder eines Arrays, auf das ich später in späteren Initialisierungen verweisen kann?jQuery Plugin-Init-Einstellungen für nachfolgende Initialisierungen speichern?

Wenn also möglich, wäre es etwa so aussehen, zunächst:

$(.selector).plugin ({ 
    var defaults = { 
     width: value, 
     height: value, 
     useCaption: value, 
     onInit : { 
      function() 
     } 
    } 
}); 

Und dann diese Standardwerte mit zusätzlichen Optionen oder Überschreibungen wie so wieder aufrufen:

$(.selector).plugin ({ 
    defaults, 
    additionalOption1: 'scroll', 
    additionalOption2: true 
}); 

Grundsätzlich bin Möchte ich vermeiden, die gleichen Einstellungen in verschiedenen Initialisierungen neu angeben zu müssen - ist das möglich?

Antwort

1

Sieht aus wie schon jQuery in Gebrauch ist :)

var defaults={ 
    width: value, 
    height: value, 
    useCaption: value, 
    onInit : { 
     function() 
    } 
}; 

$(.selector).plugin(defaults); 

$(.another-selector).plugin(
    $.extend({}, defaults, { 
     additionalOption1: 'scroll', 
     additionalOption2: true 
    }); 
+0

das ist großartig, thanks-- ich es versuchen würde. Eine weitere Frage: Wenn ich zum Beispiel einen initialen "width" -Wert in 'defaults' festlege, kann ich die Eigenschaft überschreiben, indem ich einen anderen 'width'-Wert in' $ .extend' oder nur neue Werte definiere, die nicht zuerst in 'defaults definiert wurden '? – nickpish

+0

als zusätzlichen Kommentar, fand ich meine Lösung mit @ SergeRodovnichenkos Antwort und [this thread] (http://stackoverflow.com/questions/8212991/how-to-ext-options-of-a-jquery-plugin-mit- eine Anordnung). Vielen Dank. – nickpish

Verwandte Themen