このソリューションでは、最初にページの読み込み時に <head> にスタイル ブロックを動的に追加します。
// add style block to the <head> with default placeholder css on page load
var defaultColor = 'BBBBBB';
var styleContent = 'input:-moz-placeholder {color: #' + defaultColor + ';} input::-webkit-input-placeholder {color: #' + defaultColor + ';}';
var styleBlock = '<style id="placeholder-style">' + styleContent + '</style>';
$('head').append(styleBlock);
次に、プレースホルダーのテキストの色を変更するには、スタイル ブロックの内容を更新します。
var randomColor = Math.floor(Math.random()*16777215).toString(16);
styleContent = 'input:-moz-placeholder {color: #' + randomColor + ';} input::-webkit-input-placeholder {color: #' + randomColor + ';}'
$('#placeholder-style').text(styleContent);
jsFiddle をチェックしてください。
jQuery でプレースホルダーのテキストの色を変更する