gpt4 book ai didi

javascript - 在angularjs中切换内容onclick按钮

转载 作者:行者123 更新时间:2023-12-02 17:36:35 24 4
gpt4 key购买 nike

这是JSFIDDLE DEMO我使用 JQuery 创建的。

$(function(){
$("#describe-block-toggle-btn").click(function(){
$("#ptor-it-block").toggle();
$(this).text(function(i, text){
return text === "Start" ? "Stop" : "Start";
})
});
$("#it-block-toggle-btn").click(function(){
$(this).text(function(i, text){
return text === "Start" ? "Stop" : "Start";
})
});
});

我需要将我的代码从 JQuery 转换为 Angular。

到目前为止,我可以进行很多转换,但仍然无法实现切换效果,正如我上面提到的 JSFIDDLE DEMO 中看到的那样。

这里是ANGULARJS DEMO的链接 使用 plunker。

任何帮助将不胜感激,如果有人能指出除了官方 angularjs 网站之外的优秀 angularjs 教程,那就太好了。深入学习 angularjs 遥遥领先。

更新:

幸运的是,我在一个地方找到了一堆用于学习 AngularJS 的博客文章、文章、视频等的链接。访问链接here 并探索无限。

最佳答案

http://plnkr.co/edit/VMfKJ2IKJ9WNRPlwE8Su

HTML

<!DOCTYPE html>
<html ng-app="myApp">

<head>
<link rel="stylesheet" href="style.css" />
<script src="http://code.angularjs.org/1.1.4/angular.js"></script>
<script src="script.js"></script>
</head>

<body>
<div ng-controller="ptorJasmineAddon">
<div id="ptor-nav-addon">
<span>
{{describeButtonData.block}}
<button ng-click="changeStatus(describeButtonData)">{{describeButtonData.status}}</button>
</span>
<span ng-show="describeButtonData.status == 'Stop'">
{{itButtonData.block}}
<button ng-click="changeStatus(itButtonData)">{{itButtonData.status}}</button>
</span>
</div>
</div>
</body>

</html>

JS

// Code goes here

var app = angular.module('myApp', []);
app.controller('ptorJasmineAddon', function($scope) {
$scope.describeButtonData = {
'block': 'Describe Block',
'status': 'Start',
'btnId': 'describe-block-toggle-btn',
'id': 'ptor-describe-block'
}
$scope.itButtonData = {
'block': 'It Block',
'status': 'Start',
'btnId': 'ptor-it-block',
'id': 'ptor-it-block'
};
$scope.shown=true;
$scope.changeStatus = function(btn) {
btn.status = btn.status === "Start" ? "Stop" : "Start";
console.log(btn);
};
});

既然您提到您也是初学者,如果您喜欢以这种方式学习知识,我会推荐这些视频资源:

https://www.youtube.com/watch?v=ZhfUv0spHCY

很多有关 Angular 部分的小教程,位于 http://egghead.io

freenode.net 上还有一个 #angularjs IRC,人们可以在这里提供非常有帮助且知识渊博的内容。

如果您需要进行一些 DOM 操作,您将需要使用指令。当您编写指令时,您基本上会给它一个名称,然后告诉它您应该在哪里找到它(元素/标签 E、类 C、注释 M 或属性 A)。以下是 SublimeText 中 AngularJS 插件的指令定义提示:

directive('directiveName', [ function(){ //would reference in html like <directive-name> note camel case to snake case conversion
// Runs during compile
return {
// name: '',
// priority: 1,
// terminal: true,
// scope: {}, // {} = isolate, true = child, false/undefined = no change
// controller: function($scope, $element, $attrs, $transclude) {},
// require: 'ngModel', // Array = multiple requires, ? = optional, ^ = check parent elements
// restrict: 'A', // E = Element, A = Attribute, C = Class, M = Comment
// template: '',
// templateUrl: '',
// replace: true,
// transclude: true,
// compile: function(tElement, tAttrs, function transclude(function(scope, cloneLinkingFn){ return function linking(scope, elm, attrs){}})),
link: function($scope, iElm, iAttrs, controller) {

}
};
}]);

关于javascript - 在angularjs中切换内容onclick按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22583291/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com