In my app, while page load i initiate my init function for 3 things,
init
trigger and sending a page no. (i would like to pass page default as 1)
It's because you lose the this context. jQuery passes the DOM element as the context, not whatever the original context was.
this
You need to bind the context of the function to your existing this:
$(document).on("newMessage", this.onPageChange.bind(this));