體驗(yàn)jQuery和AngularJS的不同點(diǎn)及AngularJS的迷人之處
AngualrJS是一個(gè)很貼心的web應(yīng)用框架。它有很不錯(cuò)的官方文檔和示例;經(jīng)過在現(xiàn)實(shí)環(huán)境中的測試著名的TodoMVC project,它在海量的框架中脫穎而出;而且網(wǎng)上到處都是很不錯(cuò)演示或者展示。但是對于一個(gè)沒有接觸過和AngularJS相似的框架而且還是幾乎都在使用像jQuery這樣的JavaScript類庫的開發(fā)者來講,要從jQuery的思想轉(zhuǎn)變成AngularJS的思想是有點(diǎn)困難的。至少對于我來說是這樣的,所以我想要分享一些學(xué)習(xí)筆記希望幫到一些開發(fā)者。
本篇通過jQuery和Angular兩種方式來實(shí)現(xiàn)同一個(gè)實(shí)例,從而體驗(yàn)兩者的不同點(diǎn)以及AngularJS的迷人之處。
首先當(dāng)然需要引用jquery.js和angular.js文件。
■ 使用jQuery讓寫一個(gè)簡單的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通過同一個(gè)點(diǎn)擊事件實(shí)現(xiàn)toggle呢?
--首先要在頁面中添加div,然后在js中添加相應(yīng)的代碼 <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來寫一個(gè)簡單的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通過同一個(gè)點(diǎn)擊事件實(shí)現(xiàn)toggle呢?
--我們只要在頁面中添加一個(gè)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的不同之處,我們可以發(fā)現(xiàn):AngularJS中通過聲明的方式來應(yīng)對變化,相比jQuery,AngularJS應(yīng)對變化的成本更低也更靈活。
相關(guān)文章
使用JavaScript的AngularJS庫編寫hello world的方法
這篇文章主要介紹了使用JavaScript的AngularJS庫編寫hello world的方法,AngularJS是一款高人氣的JavaScript庫,需要的朋友可以參考下2015-06-06AngularJS實(shí)時(shí)獲取并顯示密碼的方法
這篇文章主要介紹了AngularJS實(shí)時(shí)獲取并顯示密碼的方法,涉及AngularJS數(shù)據(jù)綁定及顯示相關(guān)操作技巧,需要的朋友可以參考下2018-02-02對angularJs中2種自定義服務(wù)的實(shí)例講解
今天小編就為大家分享一篇對angularJs中2種自定義服務(wù)的實(shí)例講解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-09-09使用Angular material主題定義自己的組件庫的配色體系
這篇文章主要介紹了使用Angular material主題定義自己的組件庫的配色體系的相關(guān)知識,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09詳解Angular中實(shí)現(xiàn)自定義組件的雙向綁定的兩種方法
這篇文章主要介紹了詳解Angular中實(shí)現(xiàn)自定義組件的雙向綁定的兩種方法,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-11-11Angular設(shè)計(jì)模式hierarchical?injector實(shí)現(xiàn)代碼復(fù)用模塊化
這篇文章主要為大家介紹了Angular設(shè)計(jì)模式hierarchical?injector實(shí)現(xiàn)代碼復(fù)用模塊化示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10