사용자가 스크립트를 클릭 할 때 텍스트 상자를 확인하고 "여기에 정보를 추가하십시오!"라는 값이 있으면 스크립트에서 확인하고 싶습니다. 상자를 공백으로 만들고 텍스트 색상을 # 000으로 변경하십시오. 그것은 회색으로 시작합니다.기본 자바 스크립트 기능이 작동하지 않습니다.
changeMessage()
의 맥락에서 자바 스크립트
function changeMessage() {
if(this.value=='Add additional information here!')
{this.value='';this.style.color='#000';}
}
HTML
<textarea name="message" id="message_input" rows="4" cols="21" maxlength="200"
onfocus="changeMessage();"
onblur="changeMessageBack();"
>Add additional information here!</textarea>
. 나는 이것이 항상 그 속에있는 요소를 가리키는 것이라고 생각했다. – noWayhome
@noWayhome : 그렇습니다. 그러나 당신의''changeMessage (this); ''는 익명의 함수의 몸체가되므로'this'가 요소를 참조하는 * this * 함수에 있습니다. 다른 함수 내부에서 함수를 호출 할 때 JavaScript는 현재 값으로 호출하는 함수에서'this'를 자동으로 설정하지 않습니다. 수동으로해야합니다. @xdazz의 [answer] (http://stackoverflow.com/a/9143288/1106925)는 어떻게 작동하는지 보여줍니다. –