.mousemove在IE8上

时间:2012-01-23 13:14:25

标签: jquery internet-explorer-8 mousemove

.mousemove有什么问题,因为在IE8上不会注意到。必须使用值>扩展已禁用的输入20个字符。仅在IE8上无效。 另外,为什么光标在其他元素上后不会拖回来。

$('input[disabled]').mousemove(function(){
      if ($(this).val().length > 20) {
       $(this).attr('data-default', $(this).width());
       $(this).animate({width: 300}, 'slow');
      }
});

检查小提琴: http://jsfiddle.net/DCjYA/183/

谢谢。

1 个答案:

答案 0 :(得分:2)

在这种情况下,您应该使用readonly属性,因为这将允许与输入框进一步交互。

你的css

    input{
        margin:10px;
    }
    input.readonly {
        color: grey;
        cursor:default
    }

和你的表格

<form action="form_action.asp" method="get">
      First name: <input type="text" name="fname" value="Foghorn Leghorn Foghorn Leghorn" readonly="true" class="readonly" /><br />
      Last name: <input type="text" name="lname" value="" readonly="true" class="readonly" /><br />
      Last name: <input type="text" name="lname" value="Foghorn Leghorn" readonly="true" class="readonly" /><br />
  <input type="submit" value="Submit form" style=""/>
</form>

和你的jQuery

    $('input[readonly]').mousemove(function(){
       if ($(this).val().length > 20) {
                $(this).attr('data-default', $(this).width());
                $(this).animate({width: 300}, 'slow');
                $(this).parent().addClass('cooling');
              }
    });