AngularJS改变元素显示状态 前言 本文描述使用AngularJS提供的ng-show和ng-hide指令实现自动监听某布尔型变量来改变元素显示状态. 控制html元素显示和隐藏有n种方法:html的hidden.css的display.jquery的hide()和show().bootstrap的.hide.今天的重点不是显示和隐藏,而是监听某个布尔变量值,自动改变元素显示和隐藏状态.监听函数.if判断.选择dom.设置dom,5行代码搞不定吧,而且毫无技术含量. 实例1 <body>…
在日常的 web 编程或 UI自动化脚本编写过程中,经常会遇到判断页面元素的显示状态,以对应的执行相应的操作.此文主要以 js 判断页面元素的存在状态为例,简单叙述一下 js 是如何判断元素的显示状态的,敬请小主们参阅.若有不足之处,敬请大神们不吝指正,不胜感激! 多不言述,小二上码咯. 以下为简单的 HTML 源码,如下所示: <html> <head> <meta http-equiv="Content-Type" content="text…
1.jQuery判断一个元素当前状态是显示还是隐藏 $("#id").is(':visible');   //true为显示,false为隐藏 $("#id").is(':hidden');   //true为隐藏,false为显示 if($("#id").is(':hidden')){ //逻辑代码 } 2.jQuery控制css的display $("#id").show();    //表示display:block $…
AngularJS常用知识汇总(不断更新中....) 注:请点击此处进行充电! app.controller('editCtrl',['$http','$location','$rootScope','$scope','$state','$stateParams',]) function($http, $location, $rootScope, $scope, $state, $stateParams){ // 上边声明添加显示的依赖注入,是为了防止,压缩(如UglifyJS)时改变funct…
AngularJS灵异代码事件 注:请点击此处进行充电! 事情原委 router_sys.js源代码如下: 自己在html路由跳转的代码如下: 但是在实际路由过程中,却路由到了下面的状态,相应的页面中去. 诡异的是在UC上第一次路由正常,第二次还是路由到下面的状态!路由命名是没有问题的,却执行到别路由中去了.费解! 驱除内鬼 内鬼一时还真找不出来. 尝试通过编写点击事件在函数内路由至所需页面,结果还是不可达. <a class="btn btn-success btn-sm" i…
Cookie 'data' possibly not set or overflowed because it was too large (5287 > 4096 bytes)! 注:请点击此处进行充电! 故事起源 项目开发过程中遇到以上问题,刚开始以为只是个警告,没太在意.后来发现直接影响到了程序的执行效果.果断寻找解决方法. 问题分析 根据Chrome浏览器信息定位,显示以下代码存在错误: $cookieStore.get("data") 由于自己在程序使用cookieSt…
在AngularJS应用中集成百度地图实现定位功能 注:请点击此处进行充电! 前言 根据项目需求,需要实现手机定位功能,考虑到百度业务的强大能力,遂决定使用百度地图第三方服务. 添加第三方模块的步骤与前面介绍的"在AngularJS应用中集成科大讯飞语音输入功能"步骤相同,在此不再赘述. 问题 1.有些手机无法实现定位功能(以我的手机为例:MX2,刚开始时可以实现定位,后来就出现无法定位的情况,手机定位功能也已经打开). 一部分原因是有些手机真的没有打开定位功能.(经过检查手机设置,还…
在AngularJS应用中集成科大讯飞语音输入功能 注:请点击此处进行充电! 前言 根据项目需求,需要在首页搜索框中添加语音输入功能,考虑到科大讯飞语音业务的强大能力,遂决定使用科大讯飞语音输入第三方服务.软件首页截图如下所示: 涉及的源代码如下所示: <button ng-click="startRecognize()"> <i class="icon ion-mic-a " ></i> </button> //语音…
脏值检查 注:请点击此处进行充电! 需求 在项目开发过程中,需要对药店信息进行更改.如下图所示.现在的需求是:当药店信息没有发生变化时,点击"更新信息"按钮,提示"药店信息未做任何更改". 实现 可以利用angualr的脏值检查机制解决. 由于对angular的脏值检测机制不是很了解,貌似也不太好学习.就考虑使用别的方法,也可以使用ng-change内置指令,通过控制业务逻辑实现.Demo如下: View视图: <input ng-model="ad…
AngularJS实现表格数据的编辑,更新和删除 效果 实现 首先,我们先建立一些数据,当然你可以从你任何地方读出你的数据 var app = angular.module('plunker', ['ui.bootstrap']); app.controller('MainCtrl', function($scope) { $scope.name = 'World'; $scope.employees =[{id:101, name:'John', phone:'555-1276'}, {id:…
AngularJS路由问题解决 遇到了一个棘手的问题:点击优惠详情时总是跳转到药店详情页面中去.再加一层地址解决了,但是后来发现问题还是来了: Could not resolve 'yhDtlMaintain/yhdetail' from state 'yhMaintain' 药店详情          http://192.168.1.118:8088/lmapp/index.html#/0 优惠券详情      http://192.168.1.118:8088/lmapp/index.ht…
AngularJS+BootStrap实现弹出对话框 参考资料: http://angular-ui.github.io/bootstrap/#/modal https://www.zybuluo.com/bornkiller/note/6023 http://www.html5jq.com/fe/angular_node/20141127/13.html 若想要实现对话框弹出效果,可以使用angular的$modal服务.Github上的解释如下: $modal is a service to…
AngularJS进阶(四十)创建模块.服务 学习要点 使用模块构架应用 创建和使用服务 为什么要使用和创建服务与模块? 服务允许你打包可重用的功能,使之能在此应用中使用. 模块允许你打包可重用的功能,使之能跨应用使用. 一.应用程序模块化 先看看一个没有模块化的程序 <!DOCTYPE> <!-- use module --> <html ng-app="exampleApp"> <head> <title>Angluar…
AngularJS实现根据不同条件显示不同控件 由于项目需求,需要实现根据不同条件显示不同控件的功能.具体要求如下图所示: 即当选择"每单固定减"时,下方只显示"减免金额"一栏: 当选择"每单固定折扣"时,下方只显示"折扣比例"一栏: 当选择"每单满额减"时,下方只显示"满..减.."两栏. 根据自己对angular的了解,应该可以很轻松的实现此功能. js设置控件的隐藏与显示,设置控件…
angularJS进阶阶段(4) 编译器/$compile 编译器$compile是一个AngularJS的内置服务,它负责遍历DOM树来查找匹配指令, 并调用指令的实现代码进行处理. HTML编译包括3个步骤: 匹配指令$compile遍历DOM树,如果发现有元素匹配了某个指令,那么这个指令将被加入 该DOM元素的指令列表中.一个DOM元素可能匹配多个指令. 执行指令的编译函数当一个DOM元素的所有指令都找齐后,编译器根据指令的优先级/priority指令进行排序. 每个指令的compile函…
需要在其他JavaScript文件中调用AngularJS内部方法或改变$scope变量,同时还要保持双向数据绑定: 首先获取AngularJS application: 方法一:通过controller来获取app var appElement = document.querySelector('[ng-controller=mainController]'); 然后在获取$scope变量: var $scope = angular.element(appElement).scope(); 如…
一.AngularJS 模块 模块定义了一个应用程序. 模块是应用程序中不同部分的容器. 模块是应用控制器的容器. 控制器通常属于一个模块. 1.创建模块 通过 AngularJS 的 angular.module 函数来创建模块 <div ng-app="myApp">...</div> <script> var app = angular.module("myApp", []); </script> 2.添加控制器…
addClass()-为每个匹配的元素添加指定的样式类名after()-在匹配元素集合中的每个元素后面插入参数所指定的内容,作为其兄弟节点append()-在每个匹配元素里面的末尾处插入参数内容attr() - 获取匹配的元素集合中的第一个元素的属性的值bind() - 为一个元素绑定一个事件处理程序children() - 获得匹配元素集合中每个元素的子元素,选择器选择性筛选clone()-创建一个匹配的元素集合的深度拷贝副本contents()-获得匹配元素集合中每个元素的子元素,包括文字和…
五种情况下会刷新控件状态(刷新控件状态才能刷新所有子FWinControls的显示): 在TWinControls.PaintControls中,对所有FWinControls只是重绘了边框,而没有整个重绘这些FWinControl子控件.那么什么时候才整个重绘全部FWinControls呢?这时候,就不是一个单纯的WM_PAINT来解决控件重绘的问题了,而是这个TWinControl.UpdateShowing函数: procedure TWinControl.UpdateShowing; v…
js获取元素显示隐藏的当前状态 // CSS var display = $("."+cls).css("display"); if(display == "none"){ 隐藏 }else{ 显示 } // JQuery if($("."+cls).is(":hidden")){ 隐藏 }else{ 显示 }…
js进阶 11-7  jquery如何获取和改变元素的位置 一.总结 一句话总结:jquery中匿名函数中的index参数是什么意思.jquery对象多集合,故index为所选元素的下标. 1.jquery中元素的位置有哪三种? 相对文档,offset(),相对父元素,position(),相对垂直滚动条顶部,scrollTop() offset() 方法返回或设置匹配元素相对于文档的偏移(位置). position() 方法返回匹配元素相对于父元素的位置(偏移). scrollTop():获取…
元素显示效果:display 块级元素,会导致换行:p.div.h...内联元素,不会导致换行:span.strong... 修改属性 让span标签换行 让指定div不换行 元素可见性:visibility 一:影藏内容和位置:display: none 二:正常显示:visibility: visible 三:影藏内容,不影藏位置:visibility: hidden css /* 元素显示 *//*让span标签换行*//*span{ display: block; }*/ /*让div不…
J2EE进阶(十六)Hibernate 中getHibernateTemplate()方法使用   spring 中获得由spring所配置的hibernate的操作对象,然后利用此对象进行,保存,修改和删除等操作,此方法是在配置了spring以后,hibernate由spring接管,不直接使用hibernate的session了.   HibernateTemplate提供非常多的常用方法来完成基本的操作,比如通常的增加.删除.修改.查询等操作,Spring 2.0更增加对命名SQL查询的支…
Bootstrap 提供的用于定义导航元素的一些选项.它们使用相同的标记和基类 .nav.Bootstrap 也提供了一个用于共享标记和状态的帮助器类.改变修饰的 class,可以在不同的样式间进行切换. 表格导航或标签 创建一个标签式的导航菜单: 以一个带有 class .nav 的无序列表开始. 添加 class .nav-tabs. 下面的实例演示了这点: <!DOCTYPE html> <html> <head> <title>Bootstrap 实…
Android进阶(十九)AndroidAPP开发问题汇总(三) Java解析XML的几种方式: http://inotgaoshou.iteye.com/blog/1012188 从线程返回数据的两种方法: http://www.blogjava.net/nokiaguy/archive/2009/03/19/260745.html 一般来说获取服务端数据流程是这样的: 1,跟服务端开发人员确定服务端接口使用的协议,是http请求还是webservice.根据协议不同你要在手机端使用不同的方式…
Android进阶(十八)AndroidAPP开发问题汇总(二) 端口被占用解决措施: Android使用SimpleAdapter更新ListView里面的Drawable元素: http://www.cnblogs.com/thu539/archive/2012/02/01/2334455.html Android中Bitmap,byte[],Drawable相互转化: http://www.cnblogs.com/fighter/archive/2012/02/20/android-bit…
AngularJS 表单     AngularJS使用了MVX的结构,我们可以是传统的表单更加强大.比如过去我们得自己写一大堆验证,比过过去我们得自己转换用户的输入, 现在这些工作全部可以交给AngularJS. 我们唯一要关心的就是model中的值. 在AngularJS中 ,form和input其实也是directive.(是不是很奇怪!) 这两个家伙就是传统form的加强版.     使用input标签     ng-model input专用directive,双向绑定,配合其他功能提…
[js类库AngularJs]学习angularJs的指令(包括常见表单验证,隐藏等功能) AngularJS诞生于2009年,由Misko Hevery 等人创建,后为Google所收购.是一款优秀的前端JS框架,已经被用于Google的多款产品当中.AngularJS有着诸多特性,最为核心的 是:MVVM.模块化.自动化双向数据绑定.语义化标签.依赖注入.等等. 参考资料: angularjs中文网:http://www.apjs.net/ angularjs官网:http://angula…
上一章介绍的ColorPicker控件,是控件设计的最好示例.因为其行为和可视化外观是精心分离的,所以其他设计人员可开发动态改变其外观的新模板. ColorPicker控件如此简单的一个原因是不涉及状态.换句话说,不根据是否具有焦点.鼠标是否在它上面悬停.是否禁用等状态区分其可视化外观.接下来本章介绍的FlipPanel自定义控件有些不同. FlipPanel控件背后的基本思想是,为驻留内容提供两个表面,但每次只有一个表面是可见的.为看到其他内容,需要在两个表面之间进行“翻转”.可通过控件模板定…
× 目录 [1]原理简介 [2]范围圈定 [3]大小改变[4]代码优化 前面的话 拖拽可以让元素移动,也可以改变元素大小.本文将详细介绍拖拽改变元素大小的效果实现 原理简介 拖拽让元素移动,是改变定位元素的left和top值实现的.而拖拽改变元素大小,则还需要改变元素的宽高   范围圈定 我们把改变元素大小的范围圈定在距离相应边10px的范围内 左侧边界L = obj.offsetLeft + 10 右侧边界R = obj.offsetLeft + obj.offsetWidth - 10 上侧…