.mousemove有什么问题,因为在IE8上不会注意到。必须使用值>扩展已禁用的输入20个字符。仅在IE8上无效。 另外,为什么光标在其他元素上后不会拖回来。
$('input[disabled]').mousemove(function(){
if ($(this).val().length > 20) {
$(this).attr('data-default', $(this).width());
$(this).animate({width: 300}, 'slow');
}
});
谢谢。
答案 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'); } });