jQuery UI可调整大小移动我的DOM元素

时间:2014-03-24 21:33:39

标签: javascript jquery css

前言:我已经搜索了stackoverflow,并找到了其他几个要求提出这个问题的实例。我试图了解它们,但我是一个新手,这对我来说没有意义。我为再次提出同样的问题而道歉,但提出的解决方案似乎没有用。

这是my jsfiddle。拖动顶部边缘或右上角,div将跳转到屏幕的上边缘,有时甚至会部分偏离屏幕。

HTML:

<div id='chat'>
    <div id='content'></div>
    <input id='field' type='text' value='',placeholder='' />
</div>

CSS:

#chat {
    background-color: rgba(0,0,0,0.8);
    min-width: 400px;
    min-height: 200px;
    position: fixed !important;
    bottom: 10px !important;
    left: 10px;
    padding: 5px;
    color: white;
    -webkit-border-radius:5px;
    -moz-border-radius:5px;
    -o-border-radius:5px;
    -ms-border-radius:5px;
}

#content {
    position: absolute;
    overflow-y: scroll;
    top: 5px;
    bottom: 30px;
    left: 5px;
    right: 5px;
    font-family: verdana;
    font-size: 8pt;
}

#field {
    position: absolute;
    left: 5px;
    bottom: 5px;
    background-color: rgba(0,0,0,0);
    color: white;
    border-width: 1px;
    outline: 0;
    font-family: verdana;
    font-size: 8pt;
}

JS / jQuery的:

window.onload = function() {
    $('#field').each(function(){
        $(this).width($(this).parent().width()-4);
    });

    $('#chat').resizable({
        handles: 'n, ne, e',
        resize: function(event, ui) {
            $(this).css({left:'10px'}),
            $(this).css({bottom:'10px'}),
            $('#field').width($('#field').parent().width()-4);
        }
    });    
    var handles = $('#chat').resizable('option', 'handles');
    $('#chat').resizable('option', 'handles', 'n, ne, e');
}

1 个答案:

答案 0 :(得分:0)

找到解决方案。它在Jide's comment over here

这解决了问题:

{
    position: fixed !important;
    top: auto !important;
    bottom: 0 !important;
}