Sto provando pjax per un'applicazione che sto sviluppando ma ho colpito un muro.document.ready non attivato con pjax
Forse sto andando su questo nel modo sbagliato, lasciatemi spiegare.
Nell'app, ho un menu principale in alto, con le diverse sezioni. Ciascuno dei link in questo menu è abilitato per pjax, il che significa che cambierà solo il corpo dell'applicazione.
Normalmente, quando si fa clic su un collegamento senza pjax, verrà attivato il metodo document.ready. Lo uso per associare eventi a pulsanti come nell'esempio seguente.
Ecco il mio file di users.js.coffee
loaded = false;
$ ->
$("#btn_new_user").bind "click", (event) ->
if not loaded
@path = $('#btn_new_user').attr("path")
$("#new-users-container").load(@path)
loaded = true
$("#new-users-container").slideToggle()
Come si può vedere in questo esempio, quando gli "utenti" pagina termine del caricamento, si legherà un pulsante con un evento che caricare un modulo in un div e animalo per mostrarlo.
Tuttavia, quando avvio in una sezione diversa dell'amministratore e faccio clic sul collegamento Utenti per visualizzare questo pulsante, l'evento non è vincolato. Quando ricarico la pagina nella sezione Utenti, il documento viene attivato e il pulsante funziona correttamente.
C'è una tecnica migliore per associare gli eventi ai pulsanti o c'è un modo per attivare document.ready su pjax?
Grazie.
È questo pjax o ajax, sto vedendo pjax per la prima volta – defau1t
questo è coffeescript, è un modo semplificato di scrivere javascript. pjax è solo un plugin per rotaie che semplifica e accelera il caricamento delle pagine. –
La soluzione per questa domanda potrebbe essere utile: http://stackoverflow.com/q/9696119/404623 –