In general, it is done by hovering the mouse over onmouseover and removing the onmouseout.
First, the HTML Structure
Copy codeThe Code is as follows:
<Body>
<Div id = "div1">
<Span> sidebar </span>
</Div>
</Body>
Then the css style:
Copy codeThe Code is as follows:
# Div1 {
Width: 150px;
Height: 200px;
Background: #999999;
Position: absolute;
Left:-150px ;}
Span {
Width: 20px;
Height: 70px;
Line-height: 23px;
Background: # 09C;
Position: absolute;
Right:-20px;
Top: 70px ;}
The default style sidebar is hidden.
After the mouse is moved in
The complete code is as follows:
Copy codeThe Code is as follows:
<! DOCTYPE html PUBLIC "-// W3C // dtd xhtml 1.0 Transitional // EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<Html xmlns = "http://www.w3.org/1999/xhtml">
<Head>
<Meta http-equiv = "Content-Type" content = "text/html; charset = UTF-8"/>
<Title> untitled document </title>
<Style type = "text/css">
# Div1 {
Width: 150px;
Height: 200px;
Background: #999999;
Position: absolute;
Left:-150px ;}
Span {
Width: 20px;
Height: 70px;
Line-height: 23px;
Background: # 09C;
Position: absolute;
Right:-20px;
Top: 70px ;}
</Style>
<Script>
Window. onload = function (){
Var odiv = document. getElementById ('div1 ');
Odiv. onmouseover = function ()
{
Startmove (); // The first parameter is the target value of the div left attribute, and the second parameter is the number of pixels moved each time.
}
Odiv. onmouseout = function ()
{
Startmove (-150,-10 );
}
}
Var timer = null;
Function startmove (target, speed)
{
Var odiv = document. getElementById ('div1 ');
ClearInterval (timer );
Timer = setInterval (function (){
If (odiv. offsetLeft = target)
{
ClearInterval (timer );
}
Else
{
Odiv. style. left = odiv. offsetLeft + speed + 'px ';
}
}, 30)
}
</Script>
</Head>
<Body>
<Div id = "div1">
<Span> sidebar </span>
</Div>
</Body>
</Html>