When using this very minimal CryptoJS AES example:
<script src="http://crypto-js.googlecode.com/svn/tags/3.1.2/build/rollups/aes.js"></script>
<script type='text/javascript'>
var passphrase = "Secret";
var enc = CryptoJS.AES.encrypt("Message", passphrase);
var result = enc.toString();
var decrypted = CryptoJS.AES.decrypt(result,passphrase).toString(CryptoJS.enc.Utf8);
document.write("Key="+enc.key+"<br>IV="+enc.iv+"<br>Salt="+enc.salt+"<br>Ciphertext="+enc.ciphertext+"<br>Result="+result+"<br>Decrypted="+decrypted);
</script>
(Live demo here: http://jsfiddle.net/RwnYL/)
Note that the Key, IV and Salt are always different. But the output (here displayed as Base64) always starts with the same 10 characters. I'm probably missing something, but why is this?