Прокрутка скролла для чата
Добрый вечер. Пишу чат для своего проекта, но никак не могу сделать автоматическую прокрутку скролла в iframe.
С горем пополам сделал автоматический подгон высоты под высоту окна браузера. Помогите пожалуйста сделать автоматическую прокрутку к самому нижнему сообщению чата. Перечитал кучу подобных вопросов, но не разобрался. Спасибо. Мой код:
<script language="JavaScript">
window.onload=function() {
var heighfr = window.innerHeight;
heighfr = heighfr - 260;
if(heighfr < 250) {
heighfr = 250;
}
if(heighfr > 500) {
heighfr = 500;
}
document.getElementById("ifr").style.height=heighfr+"px";
}
</script>
<div id="chat"> <iframe id="ifr" srcdoc="chatcont" name="chatfr" align="left" width="696px" height="300px" frameborder="0"><span style="color:#9e3239; font-size:20px;">Ваш браузер не поддерживается.</span></iframe> </div> |
Ну так внутри фрейма:
window.scrollTo(0, 9999); |
Цитата:
Содержимое фрейма у меня наполняется в PHP так :
$content = file_get_contents(ROOT_DIR . '/templates/chat/chat.tpl');
for($i = 0; $i < 22; $i++) {
$chatcont .= "$i<br>";
}
$searchtag = 'chatcont';
$content = str_replace($searchtag, $chatcont, $content);
$tpl->set_value('CONTENT',$content);
|
<script type="text/javascript">
window.onload = function() {
this.scrollTo(0, 9999);
}
</script>
|
Цитата:
for($i = 0; $i < 22; $i++) {
$chatcont .= "$i<br>";
$chatcont .= "<script type=\"text/javascript\">
window.onload = function() {
this.scrollTo(0, 9999);
}
</script>";
}
То выводится только цифра 0 во фрейме. Если так:
for($i = 0; $i < 22; $i++) {
$chatcont .= "$i<br>";
}
$chatcont .= "<script type=\"text/javascript\">
window.onload = function() {
this.scrollTo(0, 9999);
}
</script>";
То не работает. |
Переделал html код так, что теперь чат выводится в div со скроллом.
<script type="text/javascript">
window.onload = function() {
this.scrollTo(0, 9999);
}
</script>
Ваш скрипт в любой вставке убирает скролл заданный с помощью overflow-y:auto; |
Вопрос больше не актуален. Переписал свой чат с использованием материала из этой статьи. Спасибо за попытку помочь.
Прошу закрыть топик. |
Подскажите пожалуйста, как можно реализовать, чтобы скрол опускался только после прихода нового сообщения, не в конец списка, а на рдно сообщение. А то использую скроллту нельзя читать историю чата, постоянно откидывает в конец.
|
Цитата:
|
Подскажите, как сделать такую проверку?
|
| Часовой пояс GMT +3, время: 20:18. |