Live preview not automatically updating
There is a known issue where if you use a variable name 'entry' in any template involved in a Live Preview request (including layout templates), then it can cause the behavior you're seeing.

Some examples are:

{% set entry = craft.entries. ... .find() %}


or

{% for entry in craft.entries. ... .find() %}


The workaround is to rename that variable to something else.  myEntry, for example.