本文实例讲述了AngularJS自定义指令实现面包屑功能。分享给大家供大家参考,具体如下:
<!DOCTYPE html>
<html lang="zh-CN" ng-app="myApp">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="jquery.min.js"></script>
<script src="angular.js"></script>
<script src="bootstrap.min.js"></script>
<link rel="stylesheet" href="bootstrap.min.css" rel="external nofollow" >
<script type="text/javascript">
var myApp = angular.module('myApp', []);
myApp.controller('Ctrl', function($scope){
$scope.crumbOptions = [
{"href": "http://www.baidu.com", "title" : "Home"},
{"href": "http://www.sina.com", "title" : "Library"},
{"href": "", "title" : "Data"}
];
});
myApp.directive("custBreadcrumb", function() {
return {
restrict: 'E',
replace: true,
scope: {
options:'@'
},
link: function(scope, elem, attrs) {
var parentNode = elem.parent();
var crumbString = '<ol class="breadcrumb">';
angular.forEach(scope.$eval(scope.options), function(item) {
if (item["href"] != "") {
var tempString = '<li><a href="' + item[" rel="external nofollow" href"] + '">' + item["title"] + '</a></li>';
crumbString += tempString;
} else {
var tempString = '<li class="active">' + item["title"] + '</li>';
crumbString += tempString;
}
});
crumbString += "</ol>";
parentNode.append(crumbString);
}
};
});
</script>
</head>
<body ng-controller="Ctrl">
<cust-breadcrumb options="{{crumbOptions}}"></cust-breadcrumb>
</body>
</html>
更多关于AngularJS相关内容感兴趣的读者可查看本站专题:《AngularJS指令操作技巧总结》、《AngularJS入门与进阶教程》及《AngularJS MVC架构总结》
希望本文所述对大家AngularJS程序设计有所帮助。