2011-07-15 19 views
11

Używam metody leanModal http://leanmodal.finelysliced.com.au, aby ją zainicjować, aby otworzyć element div, ale bez metody .click(). Zasadniczo próbuję to zrobić ..inicjacja leanModal bez .click()

if(cartItems === 0){ 
    $("#cartEmpty").leanModal(); // #cartEmpty is my div with the message that needs to be initiated. 
    } else { 
    $("#nextStep").leanModal(); // #nextStep is my div is the form 
    } 

Jakieś pomysły na ten temat?

Odpowiedz

19

Wziąłem poke przez source code dla leanmodal, wygląda na to, że nie możesz. Nadal musisz mieć link, aby go uruchomić. Jednak, powinieneś być w stanie coś zrobić jak poniżej niesprawdzone top-of-my-head kodu

Dodaj parę niewidzialne linki w. Style inline są złe, tylko robi to inline uprościć

<a href="#cartEmpty" id="showCartEmpty" style="display:none" rel="leanModal" name="cartEmpty">empty cart</a> 
<a href="#nextStep" id="showNextStep" style="display:none" rel="leanModal" name="nextStep">next step</a> 

Czy normalną konfigurację dla leanmodal

$(function() { 
    $('a[rel*=leanModal]').leanModal();  
}); 

wywołać metodę click na manekina niewidoczne łącza

if(cartItems === 0){ 
    $("#showCartEmpty").click(); // in theory this'll cause the modal to be shown 
    } else { 
    $("#showNextStep").click(); // in theory this'll cause the modal to be shown 
    } 

W przeciwnym razie, źródło jest dość małe, powinieneś być w stanie sprowadzić go do własnego projektu i zmodyfikować go, aby można było go wywołać na modulowaniu, a nie na uruchomieniu modala.

+0

Wydaje się działać, dziękuję Dan . Nie jestem biggie na JS, bardziej facet PHP/SQL. Twoje zdrowie! – Braunson