Próbuję zbudować prosty mechanizm alertów za pomocą narzędzi jQuery - w odpowiedzi na niewielką ilość kodu JavaScript, wyskakuję nakładkę z komunikatem i przyciskiem OK, który po kliknięciu sprawia, że nakładka zniknie. Trivial, albo powinien być. Byłem niewolniczo podążając za http://flowplayer.org/tools/demos/overlay/trigger.html i mam coś, co działa dobrze po raz pierwszy, kiedy się go przywołuje, ale tylko wtedy. Jeśli powtórzę operację JS, która powinna wystawić nakładkę, nie działa.Powiadomienie jQuery Tools działa raz (ale tylko raz)
Moja zawartość/DIV:
<div class='modal' id='the_alert'>
<div id='modal_content' class='modal_content'>
<h2>hi there</h2>
this is the body
<p>
<button class='close'>OK</button>
</p>
</div>
<div id='modal_background' class='modal_background'><img src='/images/overlay/f9f9f9-180.png' class='stretch' alt='' /></div>
</div>
i JavaScript:
function showOverlayDialog() {
$('#the_alert').overlay({
mask: {color: '#cccccc', loadSpeed: 200, opacity: 0.9},
closeOnClick: false,
load: true
});
}
Jak powiedziałem: Po showOverlayDialog() jest wywoływana po raz pierwszy, nakładka pojawi się tak jak powinien, i zniknie po kliknięciu przycisku "OK". Ale jeśli spowoduję, że funkcja showOverlayDialog() zostanie uruchomiona ponownie, bez ponownego ładowania strony, nic się nie stanie. Jeśli ponownie załaduję stronę, wzorzec się powtarza - pierwsze wywołanie wywołuje nakładkę, ale druga nie.
Najwyraźniej czegoś brakuje - jakakolwiek rada tam jest? Dzięki!
Co łączysz z przyciskiem 'Zamknij'? W skrócie wygląda na to, że możesz manipulować HTMLem, aby ukryć nakładkę, zamiast używać JQuery - dlatego JQuery uważa, że nakładka jest już otwarta i nie będzie jej ponownie wyświetlana. Może to być niepoprawna analiza, ale jeśli mógłbyś opublikować pełne źródło, możemy być w stanie pomóc dalej – Basic
Nie przywiązuję niczego do przycisku Zamknij. Moje (ograniczone) rozumienie narzędzi jQuery polega na tym, że przypisanie przycisku OK do klasy = zamknięcie powoduje, że coś dzieje się automatycznie w kodzie narzędzia jQuery, co powoduje zniknięcie nakładki. W każdym razie nie mam żadnych innych programów do obsługi jQuery lub javascript, które zajmowałyby się tą strukturą. –