HTML5を使用してプレースホルダーを取得する方法は次のとおりです。
<input id="textfield" name="textfield" type="text" placeholder="enter something" />
編集:
以下に示すように、独自のポリフィルを一緒にハッキングすることはもうお勧めしません。Modernizrを使用して、最初にポリフィルが必要かどうかを最初に検出してから、ニーズに合ったポリフィルライブラリをアクティブ化する必要があります。Modernizrwikiにリストされているプレースホルダーポリフィルの良い選択があります。
オリジナル(続き):
そして、これが互換性のためのポリフィルです:
<input id="textfield" name="textfield" type="text" value="enter something" onfocus="if (this.value == 'enter something') {this.value = '';}" onblur="if (this.value == '') {this.value = 'enter something';}">
http://jsfiddle.net/q3V4E/1/
より良いシムアプローチは、ページの読み込み時にこのスクリプトを実行し、プレースホルダーをdata-placeholder属性に配置することです。これにより、マークアップは次のようになります。
<input id="textfield" name="textfield" type="text" data-placeholder="enter something">
そしてあなたのjsはこのように見えます:
var inputs = document.getElementsByTagName("input");
for (var i = 0; i < inputs.length; i++) {
inputs[i].value = inputs[i].getAttribute('data-placeholder');
inputs[i].addEventListener('focus', function() {
if (this.value == this.getAttribute('data-placeholder')) {
this.value = '';
}
});
inputs[i].addEventListener('blur', function() {
if (this.value == '') {
this.value = this.getAttribute('data-placeholder');
}
});
}
http://jsfiddle.net/q3V4E/4/