Most people think of crystals as being hard, immobile lumps...However the molecules and atoms that make up the crystal are in constant motion.1

Changes in temperature can cause the molecules to rearrange themselves both intramolecularly, and relative to one another. This can lead to changes in the crystalline form; a phase change.

The net upshot of this is when the crystal suddenly changes shape, it can jump. Taking a myo-inistol derivitive, as you warm it up to about 70C, it's length changes by about 10%. The re-orientation of the molecules that spreads from one end of the crystal to the other occurs in less than one hundreth of a second, giving a jump of several centimetres! Crystals of the alloy, MnCoGe have been known to jump up to 30 cm!

It's probably the spontaneous release of mechanical tension between individual crystal layers that give rise to this effect.

1. Except at absoloute zero where all motion stops, even my typing....