在集中注意力的同时开始使用Caret

时间:2014-02-24 16:36:37

标签: javascript jquery caret

我正在尝试像评论部分bevaviour一样复制Facebook,所以当用户想要添加新评论时,文字颜色正在消失,而插入符号则是新按摩的结果。我正在使用此代码:

var inp = document.getElementsByTagName('input')[1];
if (inp.createTextRange) {
    var part = inp.createTextRange();
    part.move("character", 1);
    part.select();
} else if (inp.setSelectionRange){
    inp.setSelectionRange(1, 1);
}

它似乎工作,但当我尝试把它放在像这样的Jquery选择器:

$("#massages_body input").focus(function(){ 
  $(this).css('color', 'rgba(128,128,128,0.4)');
  if ($(this).createTextRange) {
      var part = $(this).createTextRange();
      part.move("character", 1);
      part.select();
  } else if ($(this).setSelectionRange){
      $(this).setSelectionRange(1, 1);
  } 
});
它根本不起作用。我确定我在这里使用Jquery或Javascript错误,但我找不到问题。谢谢你的帮助!

1 个答案:

答案 0 :(得分:0)

我相信你想到的是Facebook使用表单输入占位符,它是HTML5规范的一部分,并得到所有主流和现代浏览器的支持。

您也可以使用此库为旧版浏览器重现该效果:Placeholders.js