2012-03-09 19 views
2

は、私は自分のサイト上でスクロール可能なdiv要素を持っているが、内部のコンテンツはAJAX方式で、毎秒更新されますので、... divがバックアップにスクロールし続ける!どのように私はこれを防ぐのですか? HERESにdiv要素自体:スクロールのdiv自動スクロール

$show = '<div class="chatlist" >'; 
while($row = mysql_fetch_array($sql)) 
    { 
    $messages = $row['messages']; 
    $userid = $row['id']; 
    $name = $row['name']; 
$show.=' 
<span class="nm" >' . $name . ':</span><br/><span class="msg">' . $messages . '<br/></span> 

';} 
    $show.='</div>'; 
    echo $show; 

HERESにCSS:スパンの両方のためにも

<style type="text/css"> 
    div.chatlist 
    { 
border: thin dotted #000; 
width: 600px; 
left:600px; 
top:600px; 
height:600px; 
background-color: #000; 
color: #FFF; 
border-radius: 5px; 
overflow: scroll; 

} 
span.nm{ 
    font-weight: bold; 
    text-align:left 
} 
span.msg{ 
text-align: right; 
font-style: italic; 
} 
    </style> 

唯一のCSSルールはこの周りfollowed.any方法を得ていますか?

+0

重要な部分が欠落しています:ajax作品です。あなたは、CSSを使用するのではなく、JavaScriptの振る舞いに対処する必要がほとんどあります。 –

答えて

0

あなたはJavaScriptを使用してDIVのscrollTopプロパティを設定することができます。

https://developer.mozilla.org/en/DOM/element.scrollTop

ですから、コンテンツが更新される前の値を保存し、更新が完了した後、それを再挿入します。

+0

http://jsbin.com/ucinu/1/edit – redaxmedia

+0

@redaxmediaこの例題は、コードと解説の別々の回答として提出することができます(例:動的に動作するかどうかを確認するために「blahs」を追加するなど)。質問はjQueryでタグ付けされていないので、私はそれも普通のJSで行うことができることを言いたいと思います。 – Devourant