2011-07-15 8 views
11

Estoy usando la opción de leanModal http://leanmodal.finelysliced.com.au para iniciarla para abrir un div pero sin el método .click(). Básicamente estoy tratando de hacer esto ..iniciación de leanModal sin .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 
    } 

¿Alguna idea de esta?

Respuesta

19

Hice un poke a través del source code para leanmodal, parece que no se puede. Aún tendrá que tener un enlace para activarlo. Sin embargo, usted debe ser capaz de hacer algo como lo siguiente no probado más alto de mi cabeza código

Añadir un par de enlaces invisibles en. Estilos en línea son una mala cosa, solamente lo hace en línea para simplificar

<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> 

realizar la configuración normal para leanmodal

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

Llame al método clic en su vínculo invisible ficticia

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 
    } 

En su defecto, la fuente es bastante pequeña, deberías poder cambiarla en tu propio proyecto y modificarla para que se pueda llamar sobre la cosa para modalizar, no para lanzar el modal

+0

Parece que funciona, gracias Dan . No soy un gran conocedor de JS, más un tipo PHP/SQL. ¡Aclamaciones! – Braunson