+ * icon.toggleMod('size', 'big', 'small');
+ * // after:
* @returns {BEM}
*/
toggleMod : function(elem, modName, modVal1, modVal2, condition) {
@@ -389,6 +401,7 @@ this.BEM = $.inherit($.observable, /** @lends BEM.prototype */ {
modName = elem;
elem = undefined;
}
+
if(typeof modVal2 == 'undefined') {
modVal2 = '';
} else if(typeof modVal2 == 'boolean') {
@@ -397,13 +410,15 @@ this.BEM = $.inherit($.observable, /** @lends BEM.prototype */ {
}
var modVal = this.getMod(elem, modName);
- (modVal == modVal1 || modVal == modVal2) &&
- this.setMod(
- elem,
- modName,
- typeof condition === 'boolean'?
- (condition? modVal1 : modVal2) :
- this.hasMod(elem, modName, modVal1)? modVal2 : modVal1);
+
+ this.setMod(
+ elem,
+ modName,
+ // если есть condition, тогда не важно текущее значение
+ typeof condition === 'boolean' ? ( condition ? modVal1 : modVal2 )
+ // иначе, если текущее значение "modVal1", значит ставим значение "modVal2"
+ // и во всех остальных случаях "modVal1"
+ : ( modVal === modVal1 ) ? modVal2 : modVal1 );
return this;
diff --git a/blocks-touch/b-slider/b-slider.js b/blocks-touch/b-slider/b-slider.js
index de5b081a..b2e2f053 100644
--- a/blocks-touch/b-slider/b-slider.js
+++ b/blocks-touch/b-slider/b-slider.js
@@ -64,7 +64,12 @@
_delayedInit: function() {
var slider = this,
- images = slider.findBlocksInside('b-icon');
+ bIcons = slider.findBlocksInside('b-icon'),
+ icons = slider.findBlocksInside('icon'),
+ images = slider.findBlocksInside('image');
+
+ // объединяем все возможные блоки-картинки
+ images = images.concat(icons, bIcons);
// если внутри есть картинки (b-icon),
// то отложить инициализацию до момента их полной загрузки,