体验jQuery和AngularJS的不同点及AngularJS的迷人之处


Posted in Javascript onFebruary 02, 2016

AngualrJS是一个很贴心的web应用框架。它有很不错的官方文档和示例;经过在现实环境中的测试著名的TodoMVC project,它在海量的框架中脱颖而出;而且网上到处都是很不错演示或者展示。但是对于一个没有接触过和AngularJS相似的框架而且还是几乎都在使用像jQuery这样的JavaScript类库的开发者来讲,要从jQuery的思想转变成AngularJS的思想是有点困难的。至少对于我来说是这样的,所以我想要分享一些学习笔记希望帮到一些开发者。

本篇通过jQuery和Angular两种方式来实现同一个实例,从而体验两者的不同点以及AngularJS的迷人之处。

首先当然需要引用jquery.js和angular.js文件。

■ 使用jQuery让写一个简单的click事件

<button id="jquery-button">JQuery Button</button>
<div id="jquery-content">I am jquery content</div>
$(function(){
$("#jquery-button").click(function(){
$('#jquery-content').toggle();
})
})

如果我们想让更多的div通过同一个点击事件实现toggle呢?

--首先要在页面中添加div,然后在js中添加相应的代码
<button id="jquery-button">JQuery Button</button>
<div id="jquery-content">I am jquery content</div>
<div id="jquery-content1">I am jquery content1</div>
$(function(){
$("#jquery-button").click(function(){
$('#jquery-content').toggle();
$('#jquery-content1').toggle();
})
})

在AngularJS中又是怎样的一种情况呢?

■ 使用Angular来写一个简单的click事件

<div ng-app="app" ng-controller="AppCtrl as app">
<button ng-click="app.toggle()">Angular Button</button>
<div ng-hide="app.isHidden">Angular content</div>
</div>
var app = angular.module("app",[]);
app.controller("AppCtrl", function(){
var app = this;
app.isHidden = false;
app.toggle = function(){
app.isHidden = !app.isHidden;
}
})

如果我们想让更多的div通过同一个点击事件实现toggle呢?

--我们只要在页面中添加一个div,通过ng-hide属性来声明
<div ng-app="app" ng-controller="AppCtrl as app">
<button ng-click="app.toggle()">Angular Button</button>
<div ng-hide="app.isHidden">Angular content</div>
<div ng-hide="app.isHidden">Angular content1</div>
</div>

以上,通过简单的例子,来比较jQuery和Angular的不同之处,我们可以发现:AngularJS中通过声明的方式来应对变化,相比jQuery,AngularJS应对变化的成本更低也更灵活。

Javascript 相关文章推荐
JavaScript通过RegExp实现客户端验证处理程序
May 07 Javascript
jquery对ajax的支持介绍
Dec 10 Javascript
JavaScript实现在页面间传值的方法
Apr 07 Javascript
JQuery中两个ul标签的li互相移动实现方法
May 18 Javascript
浅谈jQuery中setInterval()方法
Jul 07 Javascript
继续学习javascript闭包
Dec 03 Javascript
Vue.js创建Calendar日历效果
Nov 03 Javascript
微信小程序实现图片上传、删除和预览功能的方法
Dec 18 Javascript
promise和co搭配生成器函数方式解决js代码异步流程的比较
May 25 Javascript
vue-i18n结合Element-ui的配置方法
May 20 Javascript
深入浅出了解Node.js Streams
May 27 Javascript
vue过滤器实现日期格式化的案例分析
Jul 02 Javascript
JavaScript通过代码调用Flash显示的方法
Feb 02 #Javascript
AngularJS中$interval的用法详解
Feb 02 #Javascript
AngularJS中处理多个promise的方式
Feb 02 #Javascript
AngularJS数据源的多种获取方式汇总
Feb 02 #Javascript
多种JQuery循环滚动文字图片效果代码
Jun 23 #Javascript
三种AngularJS中获取数据源的方式
Feb 02 #Javascript
原生JS实现拖拽图片效果
Aug 27 #Javascript
You might like
Windows PHP5和Apache的安装与配置
2009/06/08 PHP
深入for,while,foreach遍历时间比较的详解
2013/06/08 PHP
js的event详解。
2006/09/06 Javascript
jQuery 判断图片是否加载完成方法汇总
2015/08/10 Javascript
JavaScript常用基础知识强化学习
2015/12/09 Javascript
详解Matlab中 sort 函数用法
2016/03/20 Javascript
iframe中使用jquery进行查找的方法【案例分析】
2016/06/17 Javascript
Mvc提交表单的四种方法全程详解
2016/08/10 Javascript
微信小程序 教程之WXSS
2016/10/18 Javascript
jQuery实现的购物车物品数量加减功能代码
2016/11/16 Javascript
很棒的一组js图片轮播特效
2017/01/12 Javascript
js鼠标跟随运动效果
2017/03/11 Javascript
微信小程序 新建登录页并实现tabBar隐藏
2017/06/13 Javascript
微信小程序之选项卡的实现方法
2017/09/29 Javascript
微信小程序实现倒计时调用相机自动拍照功能
2018/06/10 Javascript
nodejs(officegen)+vue(axios)在客户端导出word文档的方法
2018/07/31 NodeJs
element-ui table span-method(行合并)的实现代码
2018/12/20 Javascript
vue实现图片上传预览功能
2019/12/23 Javascript
JavaScript遍历数组的方法代码实例
2020/01/14 Javascript
Openlayers3实现车辆轨迹回放功能
2020/09/29 Javascript
利用node.js开发cli的完整步骤
2020/12/29 Javascript
vue watch监控对象的简单方法示例
2021/01/07 Vue.js
[02:01]2018完美盛典-开场舞《双子星》
2018/12/16 DOTA
wxPython框架类和面板类的使用实例
2014/09/28 Python
Python的条件语句与运算符优先级详解
2015/10/13 Python
python字符串中的单双引
2017/02/16 Python
对django views中 request, response的常用操作详解
2019/07/17 Python
英国No.1文具和办公用品在线:Euroffice
2016/09/21 全球购物
李维斯牛仔裤荷兰官方网站:Levi’s NL
2020/08/23 全球购物
自动化工程专业个人应聘自荐信
2013/09/26 职场文书
旅游网创业计划书
2014/01/31 职场文书
实习介绍信范文
2015/05/05 职场文书
2016年大学生实习单位评语
2015/12/01 职场文书
pandas DataFrame.shift()函数的具体使用
2021/05/24 Python
PyQt5结合QtDesigner实现文本框读写操作
2021/06/11 Python
muduo TcpServer模块源码分析
2022/04/26 Redis