AngularJS实现按钮提示与点击变色效果


Posted in Javascript onSeptember 07, 2016

本文用angularJS简单实现了一个小的按钮提示,按钮点击后会变色,注意html文件中需要引入jquery.js和angular.js

运行截图:

AngularJS实现按钮提示与点击变色效果

当点击按钮的时候 按钮的样式改变:

AngularJS实现按钮提示与点击变色效果

css代码:

<style type="text/css">
  *{margin: 0px;padding: 0px;}
  .bucSelectedButton{width: 100px;line-height: 30px;text-align: center;position: relative;}
  .bucSelected {border:1px solid rgb(195,195,195);color:#000;cursor: pointer;border-radius: 6px;background-color: rgb(255,255,255);}
  .bucSelectedHover{border: 1px solid rgb(74,201,255);color: rgb(74,201,255);cursor: pointer;border-radius: 6px;background-color: rgb(238,249,254);}
  .bucSelectedHover .tip {color: rgb(0,0,0);background-color: rgb(255,255,255);}
 </style>

html代码:

<div ng-controller="bucTipController">
 <!-- 指令 -->
 <buc-button id="numberType" my-title="按钮" tip-title = "这个是提示" style="margin-top:60px;"></buc-button>
</div>

js代码:

<script type="text/javascript">
var app = angular.module("tip",[]);
app.controller("bucTipController",function(){

})
.directive("bucButton",function(){
 return {
  restrict : 'E',
  replace : true,
  scope : {
   myTitle : "@",
   id : "@",
   tipTitle : "@"
  },
  template : "<button class='bucSelectedButton bucSelected' ng-click='clicked()' ng-mouseover = 'mouseover()' ng-mouseout = 'mouseout()'>{{myTitle}}\
    <div style='border:1px solid #dcdcdc;border-radius:6px;width:auto;height:20px;line-height:20px;position:absolute;top:-40px;padding:5px;white-space:nowrap;background-color:#fafafa;display:none;color:#000;left:20px;' class='tip'>{{tipTitle}}\
     <span style='position:absolute;top:25px;left:10px;background-color:#fafafa;border:1px solid #dcdcdc;width:10px;height:10px;transform:rotate(45deg);border-left:none;border-top:none;'>\
     </span>\
    </div>\
    </button>",
  link : function(scope,elem,attrs) {
   scope.mouseover = function(){
    $(".tip").show();
   }

   scope.mouseout = function(){
    $(".tip").hide();
   }

   scope.clicked = function(){
    elem.toggleClass("bucSelectedHover");
    $(".tip").hide();
   }
  }
 }
})
</script>

鼠标移入按钮,tip提示出现,鼠标移出的时候,tip消失。tip的小三角我是利用了css3的属性来实现的。

总结

以上就是这篇文章的全部内容,希望对大家学习AngularJS能有所帮助。如果有疑问大家可以留言交流。

Javascript 相关文章推荐
基于jquery的合并table相同单元格的插件(精简版)
Apr 05 Javascript
JQuery 1.6发布 性能提升,同时包含大量破坏性变更
May 10 Javascript
再谈Jquery Ajax方法传递到action(补充)
May 12 Javascript
初识Node.js
Mar 20 Javascript
jQuery实现html表格动态添加新行的方法
May 28 Javascript
js不间断滚动的简单实现
Jun 03 Javascript
Vue.js每天必学之计算属性computed与$watch
Sep 05 Javascript
详解JavaScript中数组的reduce方法
Dec 02 Javascript
利用angular、react和vue实现相同的面试题组件
Feb 19 Javascript
解决vue-cli项目webpack打包后iconfont文件路径的问题
Sep 01 Javascript
使用异步controller与jQuery实现卷帘式分页
Jun 18 jQuery
JS实现扫码枪扫描二维码功能
Jan 03 Javascript
JS实现简单易用的手机端浮动窗口显示效果
Sep 07 #Javascript
利用Angularjs实现幻灯片效果
Sep 07 #Javascript
轻松掌握JavaScript状态模式
Sep 07 #Javascript
JS简单实现tab切换效果的多窗口显示功能
Sep 07 #Javascript
JS实现的幻灯片切换显示效果
Sep 07 #Javascript
javascript宿主对象之window.navigator详解
Sep 07 #Javascript
Angular 理解module和injector,即依赖注入
Sep 07 #Javascript
You might like
PHP初学者最感迷茫的问题小结
2010/03/27 PHP
实例讲解PHP面向对象之多态
2014/08/20 PHP
PHP实现利用MySQL保存session的方法
2014/08/23 PHP
windows server 2008/2012安装php iis7 mysql环境搭建教程
2016/06/30 PHP
JavaScript高级程序设计 阅读笔记(十七) js事件
2012/08/14 Javascript
js下拉菜单语言选项简单实现
2013/09/23 Javascript
浅谈javascript事件取消和阻止冒泡
2015/05/26 Javascript
JQ技术实现注册页面带有校验密码强度
2015/07/27 Javascript
Jquery Ajax Error 调试错误的技巧
2015/11/20 Javascript
Bootstrap时间选择器datetimepicker和daterangepicker使用实例解析
2016/09/17 Javascript
浅谈webpack 自动刷新与解析
2018/04/09 Javascript
微信小程序项目实践之主页tab选项实现
2018/07/18 Javascript
快速解决angularJS中用post方法时后台拿不到值的问题
2018/08/14 Javascript
vue如何解决循环引用组件报错的问题
2018/09/22 Javascript
写一个Vue Popup组件
2019/02/25 Javascript
利用JS判断元素是否为数组的方法示例
2021/01/08 Javascript
vue仿携程轮播图效果(滑动轮播,下方高度自适应)
2021/02/11 Vue.js
python循环监控远程端口的方法
2015/03/14 Python
简单介绍Python中的struct模块
2015/04/28 Python
使用Python编写爬虫的基本模块及框架使用指南
2016/01/20 Python
Python使用win32com实现的模拟浏览器功能示例
2017/07/13 Python
python文件操作之批量修改文件后缀名的方法
2018/08/10 Python
使用Python编写Prometheus监控的方法
2018/10/15 Python
使用Python给头像加上圣诞帽或圣诞老人小图标附源码
2019/12/25 Python
pytorch 实现打印模型的参数值
2019/12/30 Python
使用sklearn的cross_val_score进行交叉验证实例
2020/02/28 Python
基于python判断字符串括号是否闭合{}[]()
2020/09/21 Python
Python用SSH连接到网络设备
2021/02/18 Python
html5 css3 动态气泡按钮实例演示
2012/12/02 HTML / CSS
威盛公司软件C++工程师笔试题面试题
2012/07/16 面试题
成人大专生实习期的自我评价
2013/10/02 职场文书
2014年便民服务中心工作总结
2014/12/20 职场文书
清明节随笔
2015/08/15 职场文书
技术转让协议书
2016/03/19 职场文书
原生JavaScript实现简单五子棋游戏
2021/06/28 Javascript
SQL实现LeetCode(175.联合两表)
2021/08/04 MySQL