textarea的onblur事件

1.当我不输入内容时onblur有效但是,当我在textarea里输入过内容后再删除完里面的内容,onblur事件里写的就不执行
2. 你好,请按下Ctrl+回车发送

<script>
    var oTextarea = document.querySelector('#msg_input');
    oTextarea.onfocus = function () {
        if (oTextarea.innerHTML === '你好,请按下Ctrl+回车发送') {
            oTextarea.innerHTML = '';
        }
    }
    oTextarea.onblur = function () {
        if (oTextarea.innerHTML === '') {
            oTextarea.innerHTML = '你好,请按下Ctrl+回车发送';
        }
    }
</script>

1、直接使用placeholder属性就实现了你要的效果,没有必要用JS

2、如果非要用js,那么取textarea里面的内容请用“value”而非“innerHTML”

var oTextarea = document.querySelector('#msg_input');
    oTextarea.onfocus = function () {
        console.log("onfocus");
        if (oTextarea.innerHTML === '你好,请按下Ctrl+回车发送') {
            oTextarea.innerHTML = '';
        }else{
            console.log('on focus  else ');
        }
    }
    oTextarea.onblur = function () {
        console.log("onblur");
        if (oTextarea.innerHTML === '') {
            oTextarea.innerHTML = '你好,请按下Ctrl+回车发送';
        }else{
            console.log('on blur  else ');
        }
    }

加上日志信息,聚焦和离开都是打印了的呀。楼主再测测。