2013-11-28 17 views
5

Come acquisire l'evento di scorrimento su una determinata pagina jQuery Mobile?Scatta l'evento di scorrimento su una particolare pagina jQuery Mobile

Pagina

<div id='pg_remote-address-book' data-role='page'> 
    <div data-role='content' id='pg_remote-address-book_content'> 
    <ul data-role='listview' id='ul_address_list'> 
    </ul> 
    </div> 
</div> 

Su pagebeforecreate, caricare dinamicamente elementi all'interno della lista non ordinata

for (var i = 0; i < 100; i++) { 
    $("#ul_address_list").append("<li>"+i+"</li>"); 
} 

Capture scorrimento

$('#pg_remote-address-book').scroll(function() { 
    console.log('scrolled'); 
}); 

L'evento scroll è non essere catturato. Come posso catturarlo?

Se metto 'window' invece di '# pg_remote-address-book' allora funziona. Ma voglio catturare l'evento di scorrimento su una pagina particolare. Puoi per favore aiutarmi su questo?

+0

è il # pg_remote-indirizzo-book generati dinamicamente? È, quindi forse dovresti aggiungere l'evento a un altro div e collegare il gestore a questo. –

+0

@ fos.alex, no, il pg_remote-address-book non viene generato dinamicamente. Questo è disponibile nel index.html – Malaiselvan

risposta

2

Ascoltare gli eventi scrollstart o scrollstop e utilizzare .on per associare eventi.

$(document).on("scrollstart", function (e) { 
    var active = $.mobile.activePage[0].id; 
    if (active == "pg_remote-address-book") { 
    // Do something 
    } else { 
    // Do something else 
    } 
}); 

Demo

Problemi correlati