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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了体验jQuery和AngularJS的不同点已经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应对变化的成本更低也更灵活

 

以上是关于体验jQuery和AngularJS的不同点已经AngularJS的迷人之处的主要内容,如果未能解决你的问题,请参考以下文章

会jQuery,该如何用AngularJS编程思想?

我们可以在 Web 应用程序中同时使用 jQuery 和 AngularJS 吗?

将BootstrapJS和AngularJS结合使用以及为啥不用jQuery

angularjs哪个版本用的多

(十六)JQuery Ready和angularJS controller的运行顺序问题

AngularJS vs. jQuery,看看谁更胜一筹