效果图:

html:

css:

.an{
margin-top:0px;
position: relative;
.popzframe,.popcframe{
display: none;
word-wrap: break-word;
position: absolute;
left:333px;
top:85px;
width: 120px;
height: 60px;
border:1px solid #e9e9e9;
background-color: #fff;
box-shadow: 4px 4px 7px -2px #888;
text-align: center;
vertical-align: middle;
.log{
display: inline-block;
margin-top: 20px;
span{
color: #FB452F;
font-weight: bold;
}
}
}
.popzgframe,.popcgframe{
display: none;
word-wrap: break-word;
position: absolute;
left:333px;
top:85px;
width: 130px;
height: 60px;
border:1px solid #e9e9e9;
background-color: #fff;
box-shadow: 4px 4px 7px -2px #888;
padding-left: 20px;
vertical-align: middle;
.log{
display: inline-block;
margin-top: 15px;
span{
color: #FB452F;
font-weight: bold;
}
}
.havecomment{
font-size: 12px;
}
}
.popcframe,.popcgframe{
left:457px;
}
.view{
display: inline-block;
text-align: center;
width:100px;
height:30px;
background:#FB452F;
border-radius:2px;
margin-right: 20px;
color:#fff;
font-size: 14px;
line-height: 30px;
margin-top:53px;
outline: none;
}
.dz{
margin-left: 333px;
&:hover{
cursor: pointer;
background: #FF5844;
}
}
.cc{
&:hover{
cursor: pointer;
background: #FF5844;
}
}
.ds{
background:#FFA42D;
&:hover{
cursor: pointer;
background: #FFAF48;
}
}
}
 
 
js:
//楼主处按钮
    //说明:点赞和踩是互斥的,并且只能点一次
    host(){
         //给楼主的点赞
         var onoff=true;
         var gate =true;
        $(".hostdz").click(function(){
            //两者都为真时,是没有按钮点击过,所以可以点击
            if(onoff && gate){
                var num=$(".hostdznum")[0].innerHTML;
                num++;
                //一个人只能点击一次,所以点击过的按钮就设置为false
                onoff=false;
                //点赞次数窗口下滑
                $(".hostdznum")[0].innerHTML=num;
                $(".popzframe").slideDown();
                $(".popzframe .log span")[0].innerHTML=num;
                //点赞次数窗口下滑三秒后收起来
                setTimeout(function(){
                    $(".popzframe").slideUp();
                },2000) 
                //当onoff按钮被点击后(false),那么踩踩按钮点击时,就会弹出已经评价过的窗口
                if(onoff){
                }else{                  
                    //给楼主的踩
                    $(".hostdown").click(function(){
                        $(".popcgframe").slideDown();
                        $(".popcgframe .log span")[0].innerHTML=$(".popzframe .log span")[0].innerHTML;
                        setTimeout(function(){
                            $(".popcgframe").slideUp();
                        },2000)
                    })
                
             }
            }else{
                //如果有按钮被点击过,那么弹出窗口都是已经点击过               
                //第二次点击点赞按钮(gate)
                $(".popzgframe .log span")[0].innerHTML=$(".popzframe .log span")[0].innerHTML;
                $(".popzframe").slideUp();
                $(".popzgframe").slideDown();
                setTimeout(function(){
                    $(".popzgframe").slideUp();
                },2000)                             
            }   
        })
         //给楼主的踩
         $(".hostdown").click(function(){
             if(onoff && gate){
                var num=$(".hostdownnum")[0].innerHTML;
                num++;
                gate=false;//设置只能点击一次
                $(".hostdownnum")[0].innerHTML=num;
                $(".popcframe").slideDown();
                $(".popcframe .log span")[0].innerHTML=num;
                setTimeout(function(){
                    $(".popcframe").slideUp();
                },2000)
                if(gate){
                }else{
                    //给楼主的赞
                     $(".hostdz").click(function(){
                        console.log(9999)
                        $(".popzgframe").slideDown();
                        $(".popzgframe .log span")[0].innerHTML=$(".popcframe .log span")[0].innerHTML;
                        setTimeout(function(){
                            $(".popzgframe").slideUp();
                        },2000)
                    })  
                }
             }else{
                    //第二次点击踩按钮(onoff)
                    $(".popcgframe .log span")[0].innerHTML=$(".popcframe .log span")[0].innerHTML;
                    $(".popcframe").slideUp();
                    $(".popcgframe").slideDown();
                    setTimeout(function(){
                        $(".popcgframe").slideUp();
                    },2000)                 
             }
            
        })
    }

工作笔记--js-点赞按钮和踩踩按钮互斥??怎么写?的更多相关文章

  1. 工作笔记——js前端规范

    去年年末做了一个项目,因为第一次做前端管理职位,第一次做整个项目的前端架构很多东西都不熟悉,作为一次大胆的尝试. js方面的只有一个坑,那就是前端与后端的网络层封装,这一块是在后端的协助下开发的.网络 ...

  2. 工作笔记——js与文件上传下载

    1 js判断上传文件的后缀名,文件大小 //判断照片大小 function getPhotoSize(obj){ photoExt=obj.value.substr(obj.value.lastInd ...

  3. amazeui学习笔记--js插件(UI增强2)--按钮交互Button

    amazeui学习笔记--js插件(UI增强2)--按钮交互Button 一.总结 1.按钮loading状态: <button type="button" class=&q ...

  4. [转载]ExtJs4 笔记(5) Ext.Button 按钮

    作者:李盼(Lipan)出处:[Lipan] (http://www.cnblogs.com/lipan/)版权声明:本文的版权归作者与博客园共有.转载时须注明本文的详细链接,否则作者将保留追究其法律 ...

  5. CSS3和js炫酷点击按钮3D翻转动画特效

    简要教程 flipside是一款使用CSS3和js制作的炫酷点击按钮无缝过渡到确认面板的过渡动画特效.该点击按钮特效在按钮不同方向的边部点击时,产生的过渡动画特效是不一样的. 在线预览   源码下载 ...

  6. 一个很不错的支持Ext JS 4的上传按钮

    以前经常使用的swfUpload,自从2010年开始到现在,很久没更新了.而这几年,flash版本已经换了好多个,所以决定抛弃swfupload,使用新找到的上传按钮. 新的上传按钮由harrydel ...

  7. clips 前端 js 倒计时 获取验证码的按钮

    <a href="javascript:void(0);" onclick="get_captcha()" class="btn btn-def ...

  8. EasyUI笔记(四)菜单和按钮

    本系列只列出一些常用的属性.事件或方法,具体完整知识请查看API文档 Menu(菜单) 菜单组件通常用于快捷菜单.他是构建其他菜单组件的必备基础组件.比如:menubutton和splitbutton ...

  9. Sencha Touch2 工作笔记

    Sencha Touch2 工作笔记 Ext.dataview.List activate( this, newActiveItem, oldActiveItem, eOpts ) Fires whe ...

随机推荐

  1. 根据输入的整数n使得输出精确到小数n位

    #include<iostream> #include<stdio.h> using namespace std; int main(){ int a,b,c; while(t ...

  2. js多张图片合成一张图,canvas(海报图,将二维码和背景图合并) -----vue

    思路:vue中图片合并 首先准备好要合并的背景图,和请求后得到的二维码, canvas画图,将两张背景图和一张二维码用canvas画出来, 将canvas再转为img 注意canvas和图片的清晰图和 ...

  3. (5.1.4)引擎管理——SSMS管理使用小技巧

    目录 [1]自带报表 [2]对象管理器详细信息 [3]日志 [4]活动监视器 [1]自带报表 无论是数据库.服务器实例.还是代理等等都可以有标准报表 [2]对象管理器详细信息 利用改方式,可以很有效的 ...

  4. A Dangerous Maze (期望值)

    https://vjudge.net/problem/LightOJ-1027?tdsourcetag=s_pctim_aiomsg [被满为姐姐碾压 降智打击题]

  5. Luogu P1650 田忌赛马

    题目 如果我们最大比对面最大大,那么直接用. 如果我们最小比对面最小大,那么直接用. 否则用我们最小去换对面最大. #include<bits/stdc++.h> using namesp ...

  6. http://www.pythontutor.com/visualize.html#mode=edit python在线检测代码

    http://www.pythontutor.com/visualize.html#mode=edit

  7. 在vue中使用async/await遇到的坑

    最近无聊在搞一些新的东西,今天就遇到一个async/await的坑: 因为我用的不是vue官方的脚手架,所以遇到这样的问题: await is a reserved word 这样的警告,我猜应该是缺 ...

  8. dict 小习题

    1.请将列表中的每个元素通过 "" 链接起来. users = ['大黑哥','龚明阳',666,'渣渣辉'] a='' for i in users: i=str(i) a=a+ ...

  9. 08、beta-actin和GAPDH的3'/5'比值

    一.大部分的基因都有beta-action基因和GAPDH基因,很多Affymetrix芯片都将它们设为一组观察RNA降解程度的内参基因.mRNA是按照5’至3’的顺序来降解的,通过比较它们3’相对于 ...

  10. sql server 三角函数

    正弦函数SIN(x)和反正弦函数ASIN(x) --SIN(x)返回x的正弦,其中x为弧度值 --ASIN(x)返回x的反正弦,即正弦x的值,若x不在-1到1的范围内,则返回NULL 示例:selec ...