首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

跪求好手指导,鼠标单击事件

2012-12-30 
跪求高手指导,鼠标单击事件本帖最后由 woaiwanb 于 2012-11-29 13:43:52 编辑我现在有两个效果:一个是点击

跪求高手指导,鼠标单击事件
本帖最后由 woaiwanb 于 2012-11-29 13:43:52 编辑 我现在有两个效果:一个是点击隐藏右边div的效果,但有缺点,就是载入网页成功后,第一次关闭右侧需要点击2下才能关闭,代码如下:
<script type="text/javascript">
    function side(a){
        if(a.innerHTML == "关闭边栏"){
            document.getElementById("div2").style.display= "none";
            document.getElementById("div1").style.width = "100%";
            document.getElementById("div2").style.width = "0px";
            a.innerHTML = "打开边栏";
        }else{
            document.getElementById("div2").style.display= "";
            document.getElementById("div1").style.width = "75%";
            document.getElementById("div2").style.width = "25%";
            a.innerHTML = "关闭边栏";
        }
    }
</script>

 

<div style="margin-left: 95%;" onclick="side(this)" ><a>关闭边栏</a></div><br />
<div id="div1"   style="float: left;width:75%;height:300px;background-color:#697896;word-break:break-all;">
    1111111111111111111111111111111111111111111111111111111111111111111111
</div>
<div id="div2"   style="float: left;width:25%;height:300px;background-color:#eeeeee;word-break:break-all;
word-wrap:break-word;" >
    <br />2222222222222222222222222
</div>

然后是第二个效果,就是点击后图片转换,载入网页时默认显示图片P1,点击一下变图片P2,再点击又变回P1,如此不断循环,(图P1为叉叉,图P2为圈圈)代码如下:
    <script language="javascript">
        function dowith() {
          
            var img = document.getElementById("img");
            if (img.src == "/images/2.gif") {
                img.src = "/images/1.gif";
             //   alert(img.src);
            }
            else {
                img.src = "/images/2.gif";
             //   alert(img.src);
            }
        }
    </script>

    <form name="form" action="" method="post">
    <button type="button" style="background: none; border: 0;" onclick="dowith();">
        
        <img id="img" src = "/images/1.gif">


    </button>
    </form>

介绍完毕。重点来了,我想将效果一改为:载入完成后直接点击1下就能达到隐藏效果,而不是现在的一开始需要点击2下才能正常运作,并且在关闭边栏右边跟着带有效果二的图片,即点击一下,既隐藏右侧边栏,文字变化,图片跟着变化,再点击,开启边栏,文字变化,图片也对应变化。关闭边栏对应图P1(叉叉),开启边栏对应图P2(圈圈)。
跪求好手指导,鼠标单击事件跪求好手指导,鼠标单击事件

用不用上面代码无所谓,简单而又能达到效果就好了,效果要完美支持IE的,我之前代码加进网页用IE看但不起效果,火狐有效。在这里先谢谢各位大神了!跪求解决方法。
[解决办法]
效果一:

<!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>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js" type="text/javascript"></script>
    <script type="text/javascript">
        //一个是点击隐藏右边div的效果,但有缺点,就是载入网页成功后,第一次关闭右侧需要点击2下才能关闭
        //原来的错误:side(this)放在了div上,但div的innerHTML的初始值是包含<a></a>的,不仅是“关闭边栏”
        //解决:改放在<a>标签中
        function side(a){
            if(a.innerHTML == "关闭边栏"){
                document.getElementById("div2").style.display= "none";
                document.getElementById("div1").style.width = "100%";
                document.getElementById("div2").style.width = "0px";
                a.innerHTML = "打开边栏";
            }else{
                document.getElementById("div2").style.display= "";
                document.getElementById("div1").style.width = "75%";
                document.getElementById("div2").style.width = "25%";
                a.innerHTML = "关闭边栏";
            }
        }
    </script>
</head>
<body>
    <div style="margin-left: 90%;">
        <a  onclick="side(this)" style="cursor:pointer;border:1px solid red;">关闭边栏</a>
    </div>
    <br />
    <div id="div1" style="float: left; width: 75%; height: 300px; background-color: #697896;word-break: break-all;">
        1111111111111111111111111111111111111111111111111111111111111111111111
    </div>
    <div id="div2" style="float: left; width: 25%; height: 300px; background-color: #eeeeee;word-break: break-all; word-wrap: break-word;">
        <br />


        2222222222222222222222222
    </div>
</body>
</html>


[解决办法]
效果二:
<!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>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js" type="text/javascript"></script>
    <script language="javascript">
        function dowith() {
            var img = document.getElementById("img");
            var flag = img.getAttribute("flag");
            if (flag!="1") {
                img.src = "http://avatar.profile.csdn.net/2/4/F/1_woaiwanb.jpg";
                img.setAttribute("flag","1");
            }
            else {
                img.src = "http://avatar.profile.csdn.net/7/1/A/1_sharp_ice.jpg";
                img.setAttribute("flag","2");
            }
        }
    </script>
</head>
<body>
    <form name="form" action="" method="post">
        <button type="button" style="background: none; border: 0;" onclick="dowith();">
        <img id="img" src = "http://avatar.profile.csdn.net/2/4/F/1_woaiwanb.jpg" flag="1" >
    </button>
    </form>
</body>
</html>

热点排行