Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

unidades:04_masdirectivas:09_ngstyle [2014/07/31 21:32]
admin creado
unidades:04_masdirectivas:09_ngstyle [2014/08/29 23:07] (actual)
admin
Línea 1: Línea 1:
 ====== 4.9 ng-style ====== ====== 4.9 ng-style ======
 +Esta directiva permite modificar el estilo CSS de un tag pero definiendo el estilo como un objeto del ''​$scope''​. Dicho objeto tendrá propiedades cuyo nombre será el nombre del estilo CSS y el valor de la propiedad será el valor del estilo CSS.
  
 +Es decir que si creamos el siguiente objeto JavaScript en el ''​$scope'':​
 +<sxh js>
 +  $scope.estilo={
 +    color:"#​FF0000",​
 +    backgroundColor:'​yellow'​
 +  }
 +</​sxh>​
  
 +y a un tag HTML le ponemos lo siguiente:
 +<sxh html>
 +<div ng-style="​estilo" ​ >Este es un texto con colores dinámicos</​div>​
 +</​sxh>​
 +
 +siendo ''​estilo''​ el nombre de la propiedad del ''​$scope''​ que tiene el objeto JavaScript con las propiedades CSS
 +
 +Se le pondrá al div el estilo siguiente:
 +  style="​color:#​FF0000;​background-color:​yellow"​
 +
 +Pero ahora todo ésto tiene una ventaja. Al ser valores del ''​$scope''​ los podemos modificar desde AngularJS y automáticamente se modificará el estilo CSS.
 +
 +Ahora podemos añadir los siguientes tags ''<​input>''​ para modificar desde la propia página los colores:
 +<sxh html>
 +Escribe el color del texto (formato HTML):<​input ng-model="​estilo.color" ​ >
 +Escribe el color del fondo (formato HTML):<​input ng-model="​estilo.backgroundColor" ​ >
 +</​sxh>​
 +
 +<note tip>
 +Personalmente me sigue sorprendiendo lo fácil que es hacer modificaciones en el DOM solamente modificando información desde JavaScript. En este caso ha sido el estilo CSS, pero con ''​ng-if''​ , ''​ng-repeat''​ , ''​ng-options''​ o la siguiente que vamos a ver [[unidades:​04_masdirectivas:​10_ngclass|ng-class]] también es muy sencillo hacer modificaciones en el DOM. 
 +
 +Con herramientas así usar jQuery para modificar el DOM parece cosa del siglo pasado. :-)
 +</​note>​
 ====== Ejemplo ====== ====== Ejemplo ======
  
-{{url>​http://embed.plnkr.co/}}+<sxh html;title:index.html;​highlight:​ [14]> 
 +<​!DOCTYPE html> 
 +<html ng-app="​app">​ 
 +<​head>​ 
 +  <script src="//ajax.googleapis.com/ajax/​libs/​angularjs/​1.2.19/​angular.js"></​script>​ 
 +  <script src="​script.js"></​script>​ 
 +</​head>​ 
 +<body ng-controller="​PruebaController">​ 
 + 
 +  Escribe el color del texto (formato HTML):<​input ng-model="​estilo.color">​ 
 +  <​br>​ 
 +  Escribe el color del fondo (formato HTML):<​input ng-model="​estilo.backgroundColor">​ 
 +  <​br>​ 
 +  <​br>​ 
 +  <div ng-style="​estilo">​Este es un texto con colores dinámicos</​div>​ 
 + 
 +</​body>​ 
 +</​html>​ 
 +</​sxh>​ 
 + 
 +  * Linea 14: Se indica la propiedad del ''​$scope''​ que tiene los estilos CSS del elemento 
 + 
 +<sxh js;​title:​script.js;​highlight:​ [4,​5,​6,​7]>​ 
 +var app = angular.module("​app",​ []); 
 +    
 +app.controller("​PruebaController",​ function($scope) { 
 +  $scope.estilo={ 
 +    color:"#​FF0000",​ 
 +    backgroundColor:'​yellow'​ 
 +  ​} 
 +}); 
 +</​sxh>​ 
 + 
 +  * Linea 4: Se define la propiedad del ''​$scope''​ con los estilos CSS
  
 +{{url>​http://​embed.plnkr.co/​Ggeuo9}}
 ====== Referencias ====== ====== Referencias ======
   * [[https://​docs.angularjs.org/​api/​ng/​directive/​ngStyle|ng-style]]   * [[https://​docs.angularjs.org/​api/​ng/​directive/​ngStyle|ng-style]]
unidades/04_masdirectivas/09_ngstyle.1406835169.txt.gz · Última modificación: 2014/07/31 21:32 por admin
Ir hasta arriba
CC Attribution-Share Alike 3.0 Unported
chimeric.de = chi`s home Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0