2016-07-11 4 views
0

У меня есть плагин Highslide на моей веб-странице с основными всплывающими окнами, что мне нужно, когда пользователь щелкает за пределы всех открытых всплывающих окон.Закрыть все Highslide on click outside

Пробовал это, но без везения:

hs.close(); 

ответ

0

После выполнения некоторых исследований в моей консоли я пришел с этим решением и работает довольно хорошо ..

$(document).mouseup(function (e) 
{ 
    if($(".highslide-wrapper").length==0) 
     return; 

    var container = $(".highslide-wrapper"); 

    if (!container.is(e.target) 
     && container.has(e.target).length === 0) 
    { 
     for (var i = 0; i < hs.expanders.length; i++) { 
      var exp = hs.expanders[i]; 
      if (exp) exp.close(); 
     } 
    } 
}); 

И вы также можете иметь чек, если щелкнуть элемент другой эскиз или нет ..

0
hs.Expander.prototype.onInit = function(sender) { 
    for (var i = 0; i < hs.expanders.length; i++) { 
     var exp = hs.expanders[i]; 
     if (exp) exp.close(); 
    } 
};