我有一个我在间隔上设置的功能:
function refresh() {
if ($("#autorefresh").checked) {
var elem = $("#messagesDiv");
elem.scrollTop = elem.scrollHeight;
}
}
var autoRefresh = window.setInterval(refresh(), 1000);
和html页面上的简单复选框输入。我继续在refresh()
函数上获得一个意外的令牌函数。我已经检查过太多逗号,括号太多,在这个意义上似乎没有任何错误。任何想法?
答案 0 :(得分:3)
var autoRefresh = window.setInterval(refresh(), 1000);
需要
var autoRefresh = window.setInterval(refresh, 1000);
你会发现
$("#autorefresh").checked
需要
$("#autorefresh").prop("checked")
和你的第三个问题,没有scrollTop和scrollHeight属性,你没有使用DOM元素
elem.scrollTop = elem.scrollHeight;
应该是
elem.scrollTop(elem[0].scrollHeight);
更新的代码将是
function refresh () {
if ($("#autorefresh").prop("checked")) {
var elem = $("#messagesDiv");
elem.scrollTop(elem[0].scrollHeight);
}
}
var autoRefresh = window.setInterval(refresh, 1000);
运行示例: