【发布时间】:2018-01-06 20:19:33
【问题描述】:
当我打开页面时,第一次将鼠标光标悬停在段落列表(q1,q2,q3,q4)上,tooltip 的data-placement 属性设置在左侧。
预期:当我点击“展开视图”链接时,我正在调用一个方法 changePlacement,我正在更改 $scope.changeDataPlacement 的范围值到 'right' ,但 data-placement 不会更改为 'right'...
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.items = ['q1', 'q2', 'q3', 'q4'];
$scope.changePlacement = function() {
$scope.changeDataPlacement = 'right';
console.log($scope.changeDataPlacement);
alert("data-placement@ right side:" + $scope.changeDataPlacement);
};
$(document).ready(function() {
$('[data-toggle="tooltip"]').tooltip();
});
});
<!DOCTYPE html>
<html>
<head>
<title>Bootstrap Example</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
</head>
<body>
<div ng-app="myApp" align="center" ng-controller="myCtrl">
<a href="javascript:;" ng-init="watchlistexpand = null;changeDataPlacement='left'" ng-click="watchlistexpand = !watchlistexpand; changePlacement();" title="{{ watchlistexpand ? 'Compact' : 'Expand'}} View">{{ watchlistexpand ? 'Compact' : 'Expand'}} View</a>
<div ng-repeat = "item in items">
<a href="#" data-toggle="tooltip" data-placement="{{(changeDataPlacement === 'left')? 'left':'right'}}" title="Hooray!">{{item}}</a>
</div>
</div>
</body>
</html>
【问题讨论】:
标签: javascript jquery html angularjs twitter-bootstrap