在mui示例的im-chat.html中,系统默认提供了一条消息(record.length==1),此时页面显示正常。
但如果消息列表增大为10条甚至更多时,最后面的一条无法完全显示。如下图,初始数据是到10的,但是只显示到9(不仅scrollTop不对,而且10这条消息拖不过去,怀疑是高度问题):
这时候我再发送个11,可以看到,消息列表显示正常了(隐身的10也显示了)。
发送前:
发送后:
初始化的消息列表,是到10的:
var record = [{"sid":"1-2","sender":"self","content":"1","type":"text"},{"sid":"1-2","sender":"self","content":"2","type":"text"},{"sid":"1-2","sender":"self","content":"3","type":"text"},{"sid":"1-2","sender":"self","content":"4","type":"text"},{"sid":"1-2","sender":"self","content":"5","type":"text"},{"sid":"1-2","sender":"self","content":"6","type":"text"},{"sid":"1-2","sender":"self","content":"7","type":"text"},{"sid":"1-2","sender":"self","content":"8","type":"text"},{"sid":"1-2","sender":"self","content":"9","type":"text"},{"sid":"1-2","sender":"self","content":"10","type":"text"}];
如果把界面底部footer的样式中的高度从50px-->5px,则可以显示完全。
footer {
position: fixed;
width: 100%;
height: 50px;
min-height: 50px;
border-top: solid 1px #bbb;
left: 0px;
bottom: 0px;
overflow: hidden;
padding: 0px 50px;
background-color: #fafafa;
}
如图:
可以看到,此时高度是对的(可以拖动看到完整的消息),滚动位置没改有点问题。故初步推断,是同一个子webview中的列表div和footer的高度问题(页面初始化时&&初始消息列表足够长时,列表div的高度被footer挤压了,导致最后一条消息看不到也拖不动)。但发送消息后,列表会从不正常变成正常。
web前端开发
同样遇到这样的问题
2017-01-11 18:05