【问题标题】:How increase image size with ng-click on angular js?如何使用 ng-click on angular js 增加图像大小?
【发布时间】:2016-11-24 23:20:35
【问题描述】:

我需要在图像上添加一个 ng-click 功能,当我点击它时必须增加大小,当我离开鼠标后恢复原始大小。

使用 css 我已经创建了这个并且在将鼠标放在图像上时运行良好

 .images img{
  float: left;
  height: 100px;
  width: 100px;
}

.images img:hover{
width: 30%;
height: 30%%;
transition: width 2s, height 4s
}

在我拥有的 html 上

 <img ng-click="$ctrl.changeSize(img)" ng-src="https://www.google.it/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png"  />

我不知道当我点击它时我必须在 changeSize 上写什么来改变图像的大小。

我想使用 ng-click 事件,如何调用函数 changeSize 的 css 值?

谢谢。

【问题讨论】:

  • 您是否尝试过在点击时更改标志的 ng-class?
  • 您也可以使用angular.element(document).find('the element name').css({ 'width': '30%', 'height': '30%' }); 的查询样式,这将在使用ng-click 触发功能后来自您的控制器
  • @Vali 如何在点击进入 ng-class 时使用标志?
  • @akinjide 我想使用 .css 中的值,而不是将更改的值直接放入 .js 中

标签: html css angularjs


【解决方案1】:

该函数需要在您的控制器中。

function toggleSize() {
  angular.element(document).find('#img-responsive').css({ 'width': '30%', 'height': '30%' });
}

<img id="img-responsive" ng-click="$scope.toggleSize()" ng-src="https://www.google.it/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png"  />

【讨论】:

  • 感谢此解决方案,但我无法更改 .css 中的值,每次更改都必须在 js 中完成。我想修改 .css 中的值
【解决方案2】:
 <img ng-click="$ctrl.toggleSize()" ng-class="{little: $ctrl.littleSize, big: !$ctrl.littleSize}" ng-src="https://www.google.it/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png"  />

在你的控制器中:

$ctrl.littleSize = true;

$ctrl.toggleSize = function() {
    $ctrl.littleSize = !$ctrl.littleSize;
}

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-30
  • 1970-01-01
  • 2016-03-31
  • 1970-01-01
  • 1970-01-01
  • 2018-12-12
相关资源
最近更新 更多