I have written a code that adds HTML tags if the height of span is greater than 40.
HTML code it adds is break in this case.
File app.js
var myApp = angular.module('MyApp', [])
.controller('MyController', function ($scope) {
$scope.value = 'Working';
$scope.count = 0;
$scope.calculate = function(level)
{
var element2 = '#Span' + level;
height = $(element2).height();
htmltext = $(element2).html();
if (height > 40) { //if height of span is greater than 45
$(element2).html(htmltext + '<br>'); //Add the html you want
}
else {
}
return "Height of span =" + height;
// return "";
}
});
File app.css
#Span0 {
color:red;
}
#Span1 {
color:green;
}
#Span2 {
color:blue;
}
#Span3 {
color:red;
}
#Span4 {
color:red;
}
index.html
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.16/angular.min.js"></script>
<script src="app.js"></script>
<link href="app.css" rel="stylesheet" />
</head>
<body ng-app="MyApp" ng-controller="MyController" ng-init="paragraphs = [
{text: 'This is the first paragraph. This is the first paragraph. This is the first paragraph. This is the first paragraph. This is the first paragraph. This is the first paragraph. This is the first paragraph. This is the first paragraph. This is the first paragraph. This is the first paragraph. This is the first paragraph. This is the first paragraph. This is the first paragraph. This is the first paragraph. This is the first paragraph. This is the first paragraph. This is the first paragraph. This is the first paragraph. This is the first paragraph. This is the first paragraph.'},
{text:'This is the second. This is the second.This is the second.This is the second.This is the second.This is the second.This is the second.This is the second.This is the second.This is the second.This is the second.This is the second.This is the second.This is the second.This is the second.This is the second.'},
{text: 'This is the third. This is the third.This is the third.This is the third.'}];">
{{value}}
{{count}}
<span ng-repeat="paragraph in paragraphs" ng-change="ngChangeCalled()" id="Span{{$index}}" ng-model="repeatSpan">{{paragraph.text}} {{calculate($index)}}"</span>
</body>
</html>
Any issues please let me know.
You can find Jsbin here
ng-showis that this HTML is template for a directive, and if I have<span ng-show="xxx">{{something}}</span><span ng-show="yyy">{{something else}}</span>I get an error 'directive template must have exactly one root node'.