Если вы создаете div динамически, он не будет работать и не будет работать, если этот код запускается до $(document).ready()
.
Решения обеих проблем, соответственно, заключаются в использовании механизма jQuery live
, если вы создаете динамические div, и размещении всех привязок событий jQuery в документе, готовом к документу.
Также убедитесь, что ваша функция обработчика щелчков определена до того, как назначите ее методу .click.