<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script>
<style>
.gimg{width:50px;height:50px;}
.goodsone{float:left;}
.goodsone h1{cursor:pointer}
.goodsone h1.selected{border:1px solid #ccc;background-color: #C00;}
</style>
</head>
<body>
<div ng-app="myApp1" ng-controller="myCtrl1" class="testtop container"> <div class="goodsone " ng-repeat="x in allGoods"> <h1 class="goodstitle" ng-click="toggle($event,$index);" ng-if="$index != 0">{{x.title}}</h1>
<h1 class="goodstitle selected" ng-click="toggle($event,$index);" ng-if="$index == 0">{{x.title}}</h1> <div ng-show="myCurrent == $index" class="realcontent"> <ul>
<li ng-repeat="y in x.goods">
<dl><dt >{{y.name}}</dt>
<dd>{{y.price}}</dd><dd><a href="product-{{y.id}}.html"><img class="gimg" ng-src="{{y.img}}"></a></dd></dl>
</li>
</ul> </div> </div> </div>
<script>
var app = angular.module('myApp1', []);
app.controller('myCtrl1', function($scope) {
$scope.allGoods=[ {
title: '标题1',
goods: [{
id: '1',
name: 'Jani',
country: 'Norway',
price: "1.00",
img: 'https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo/bd_logo1_31bdc765.png'
},
{
id: '2',
name: 'Hege',
country: 'Sweden',
price: "2.00",
img: 'http://p0.meituan.net/avatar/1dff8c38406d4d6b6540c69503f409d357171.jpg'
},
{id: '3', name: 'Kai', country: 'Denmark', price: "3.00", img: 'http://up.qqjia.com/z/25/tu32695_9.jpg'}
]
},
{
title: '标题2',
goods: [{
id: '2',
name: 'Jani222',
country: 'China',
price: "6.00",
img: 'http://desk.fd.zol-img.com.cn/t_s960x600c5/g5/M00/01/0E/ChMkJlbKwaOIN8zJAAs5DadIS-IAALGbQPo5ngACzkl365.jpg'
},
{
id: '6',
name: 'Sk',
country: 'Sweden2',
price: "5.00",
img: 'http://cdn.duitang.com/uploads/item/201610/20/20161020070310_c5xWi.jpeg'
},
{
id: '3', name: 'Kai', country: 'Denmark', price: "3.00", img: 'http://up.qqjia.com/z/25/tu32695_9.jpg'
}
]
},
{
title: '标题3',
goods: [{
id: '4',
name: 'OOMD',
country: 'Yuena',
price: "63.00",
img: 'https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo/bd_logo1_31bdc765.png'
},
{
id: '6',
name: 'JKHD',
country: 'MMLLD',
price: "25.00",
img: 'http://p0.meituan.net/avatar/1dff8c38406d4d6b6540c69503f409d357171.jpg'
},
{
id: '3', name: 'Kai', country: 'Denmark', price: "3.00", img: 'http://up.qqjia.com/z/25/tu32695_9.jpg'
}
]
}
];
$scope.myCurrent=0; $scope.toggle=function(event,indexnow){
var clickele=angular.element(event.target);
//angular.element(document.querySelector(".goodsone h1")).removeClass("selected");
angular.element(document).find('h1').removeClass("selected");
// alert(clickele);
clickele.addClass("selected");
$scope.myCurrent=indexnow;
}
});
</script> </body>
</html>

angular 实现tab切换(循环输出tab标题及tab下属内容,非direct,非include)的更多相关文章

  1. angular绑定数据 使用循环输出列表数据

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script sr ...

  2. 19 Flutter 自定义AppBar 定义顶部Tab切换 底部Tab结合顶部Tab实现类似头条页面布局(27分36秒)

    Flutter AppBar自定义顶部导航按钮图标.颜色以及TabBar定义顶部Tab切换. leading:在标题前面显示的一个控件,在首页通常显示应用的logo:在其他界面通常显示为付汇按钮. t ...

  3. Tab切换类型

    Tab切换类型 点击Tab 滑过Tab 延迟Tab CSS样式 ; ; list-style:none; font-size:12px;} .notice{width:298px; height:98 ...

  4. echarts tab 切换问题整理

    一.bootstrap tabs 解决方案 方式一 tab切换echarts无法正常显示 https://blog.csdn.net/cjs68/article/details/78072382 ta ...

  5. 关于scrollintoview()真的是有意思极了,结合普通tab切换一起看看

    scrollIntoView(alignWithTop) 是html5新特性中的一个元素,他主要是指滚动浏览器窗口或容器元素,以便在当前视窗的可见范围看见当前元素. alignWithTop是true ...

  6. 教你两招用纯CSS写Tab切换

    说到Tab切换,你可能首先想到的就是使用jQuery,短短几行代码就可以轻松搞定一个Tab切换. 而今天所要分享的,是使用 0 行JS代码来实现Tab切换! 具体效果如下:   Tab切换 方法一:模 ...

  7. jquery TAB切换小插件

    //tab切换 ;(function($, window, document, undefined) { $.fn.tab = function(options) { var defaults = { ...

  8. Angular——tab切换案例

    基本介绍 angular框架下的tab切换,相比较于之前的纯js写的代码,有一个很大的特点就是以数据为驱动,基本上不用搜索dom元素就可以实现效果 基本使用 (1)导航部分使用的是的状态使用的是ng- ...

  9. angular.js实现二级tab切换

    <div class="guide-type"> <h3 ng-class="{true:'active', false:''}[tab == 'pc' ...

随机推荐

  1. i++与++i

    #include <stdio.h> int main() { int a,b,c,d; a = 10; b = a++;//相当于两个句子:b = a,a += 1;先使用a的值再加1 ...

  2. 字符串strcpy

    strcpy函数的表达方式: //把一个char组成的字符串循环右移n个,如:“abcdefghi",n=2,移动后"hiabcdefgh" #include <i ...

  3. java 接口

    1.接口的引出:发现没有继承关系的类也能共享行为 2.接口不是类,类描述对象的属性和行为,但是接口只关注实现的行为3.当我们发现有行为在多个没有继承关系的类中共享,我们要把它抽取到接口中,而不是写到父 ...

  4. Palindrome Pairs -- LeetCode 336

    Given a list of unique words. Find all pairs of distinct indices (i, j) in the given list, so that t ...

  5. Velocity快速入门教程-脚本语法详解(转)

    1.变量 (1)变量的定义: #set($name = "hello")      说明:velocity中变量是弱类型的. 当使用#set 指令时,括在双引号中的字面字符串将解析 ...

  6. nodevalue

    在改变文本节点值时,使用DOM的nodeValue属性,用来得到和设置一个节点的值. 代码示例: html: <p id="description">choose a ...

  7. Java的数组长度无需编译指定,因为它是对象

    大家可以看从Thinking in Java中摘出来的代码理解一下,甚至.多维数组的子数组无须等长 //: MultiDimArray.java// Creating multidimensional ...

  8. Decorator实现AOP编程。

    Program.cs class Program { static void Main(string[] args) { User user = " }; var processor = T ...

  9. <随便写写>

    # Markdown用法 整理

  10. Lua table库整理(v5.1)

    这个库提供了表处理的通用函数. 所有函数都放在表 table. 无论何时,若一个操作需要取表的长度, 这张表必须是一个真序列. table.concat(list, [, sep, [, i , [, ...