我想在onclick期间使用jQuery扩展输入文本框的宽度。
例如,如果输入的默认宽度为100px,当用户点击它进行输入时,它将扩展为宽度为150px。
是否可以这样做?
感谢。
答案 0 :(得分:22)
这是jsfiddle上的updated example动画,并在模糊时返回默认大小。
供参考,请参阅jQuery Animate文档。
答案 1 :(得分:7)
我想通过删除保存原始大小的额外步骤来构建@ wsanville的示例。动画也采用字符串值,如'+ = 50'或' - = 50'来增加/减小宽度。
$('#box').focus(function()
{
$(this).animate({ width: '+=50' }, 'slow');
}).blur(function()
{
$(this).animate({ width: '-=50' }, 'slow');
});
答案 2 :(得分:4)
答案 3 :(得分:4)
我知道派对有点晚了,但是如果有人想要一个使用:focus属性的纯CSS解决方案。
#textbox {
width:100px;
transition: 0.5s;
}
#textbox:focus {
width:150px;
transition: 0.5s;
}
他是我的jsFiddle:
https://jsfiddle.net/qo95uquv/
汤姆
答案 4 :(得分:1)
<input type="text" id="tbText" size="30px"/>
<script type="text/javascript">
$(document).ready(function() {
$('#tbText').focus(function() {
$('#tbText').css("width", "250px");
});
$('#tbText').blur(function() {
$('#tbText').css("width", "150px");
});
});
</script>
答案 5 :(得分:0)
确定。让我们说你有
<input id="mytextbox" />
你可以做到
$("#mytextbox").focus(function(){
$(this).width(150)
});