如何使用jquery调整文本框的大小并在div元素中获取维度

时间:2011-10-26 18:26:44

标签: jquery asp.net html resize dimensions

我有一个可以拖动的div元素,我在div元素中有一个文本框,当我自动拖动div元素时,文本框大小应该与div一起增加。我需要获取文本框X和Y位置那我该怎么做?

这就是我现在所拥有的:

http://jsfiddle.net/wWFpP/3/

这是我的颂歌:

   <div class="demo">
            <asp:TextBox ID="TextBox1" runat="server" TextMode="MultiLine"></asp:TextBox>
        </div>

这是我的拖动脚本:

<script>
        $(function () {
            $('.demo')
        .draggable()
        .resizable();
        });

    </script>

2 个答案:

答案 0 :(得分:3)

根据规范,应根据行和列指定textarea,但您仍然可以使用CSS设置它们的样式:

#TextBox1
{
    width: 100%; height: 100%; /* make the element resize */
}
.demo
{
    width: 150px;
    height: 150px;
    padding: 5px 10px 20px 4px; /* updated padding to make things look better */
    background-color: #ff8811;
    position: absolute;
    top: 150px;
    left: 300px;
}

here。在Chrome浏览器中测试过。

另外,如果你需要获得X和Y坐标,draggable有一个stop方法可以绑定到:

$('.demo')
    .draggable({ stop: function(event, ui) {
        //get the textarea element and it's coordinates
        var txt = $(this).find('textarea:first');
        var x = txt.offset().left;
        var y = txt.offset().top;
        alert('(' + x + ', ' + y +')');
    } })
    .resizable();

答案 1 :(得分:1)

这就是你想要的吗?

http://jsfiddle.net/gmrcn/

修改
http://jsfiddle.net/gmrcn/2/

#TextBox1 {
    width: 100%;
    height: 100%; /* edit: fixed @ comment */
}