Esta plantilla sirve para crear calculadoras interactivas. Requiere el gadget de calculadora . La calculadora funciona de forma predeterminada. Puede desactivarlo en: Preferencias > Gadgets > Gadgets de plantilla > Habilita la plantilla de calculadora de JavaScript .
Puede utilizar esta plantilla varias veces en una página para crear widgets de entrada; algunos de ellos tendrán fórmulas basadas en otros widgets, como una hoja de cálculo.
Puede utilizar {{ Calculator label }} para marcar el texto como etiqueta para un widget de calculadora.
Las estadísticas de esta plantilla están disponibles en [1]
{{calculadora|id=a|predeterminado=2|tamaño=4}} × {{calculadora|id=b|predeterminado=2|tamaño=4}} = {{calculadora|id=c|fórmula=a*b|predeterminado=4|tipo=normal}}
produce:
2 × 2 = 4
{{calculadora|id=km|tipo=número|tamaño=9|predeterminado=1.609344|fórmula=millas*1.609344}} km ={{calculadora|id=millas|tipo=número|tamaño=9|predeterminado=1|fórmula=km/1.609344}} millas
produce:
1,609344 km = 1 milla
Puedes colocar widgets dentro de una wikitable.
{|clase="wikitable" estilo = "float: izquierda; margen-izquierdo:15px;"|+ Métrico|-| {{calculadora etiqueta|Peso|para=pesokg}} || {{calculadora|id=pesokg|talla=3|predeterminado=80}} kg|-| {{calculadora etiqueta|Altura|para=alturacm}} || {{calculadora|id=alturacm|tamaño=3|predeterminado=160}} cm|-| IMC || '''{{calculadora|id=bmimetric|type=plain|formula=round(pesokg/peso(alturacm/100,2))|predeterminado=31|estilo=min-width:3ch;display:inline-block}} kg/m<sup>2</sup>'''|}
También puedes colocar widgets dentro de una tabla HTML.
<tabla clase="wikitabla"><tr><td>Imperial</td></tr><tr><td>Peso</td><td>{{calculadora|id=peso|talla=3}} libras</td></tr><tr><td>Altura</td><td>{{calculadora|id=alturaPies|talla=1}} pies {{calculadora|id=alturaPulgadas|talla=2}} pulgadas</td></tr><tr><td>IMC</td><td>'''{{calculadora|id=imc|type=plain|formula=round(100*peso*703/pow(alturaPies*12+alturaPulgadas,2))/100}} kg/m<sup>2</sup>'''</td></tr></tabla>
Al presionarlo, el {{ botón de calculadora }} actualiza un campo de formulario.
{{botón de calculadora|contents=¡Haz clic en mí!|for=buttoncount|formula=buttoncount+1|type=plain}}Se ha hecho clic en el botón {{calculator|type=plain|default=0|id=buttoncount}} veces.
El botón ha sido hecho clic 0 veces.
Una {{ etiqueta de calculadora }}
{{calculator|type=checkbox|id=checklabelex}} {{calculator label|label=Haga clic en esta etiqueta|for=checklabelex}}
Por favor haga clic en esta etiqueta
Las fórmulas utilizan una sintaxis matemática normal, con palabras en inglés que representan otros cuadros de entrada. Por ejemplo, sin(1+foo*2) multiplicaría el cuadro foo por 2, sumaría 1 y tomaría el seno del total. Todos los cálculos se realizan utilizando números de punto flotante de doble precisión IEEE 754 .
Los operadores admitidos incluyen: +, -, *, ×, /, ÷, % (el porcentaje es el operador de módulo). La exponenciación debe utilizar la función pow().
Las funciones matemáticas admitidas incluyen: 'abs', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'cos', 'cosh', 'exp', 'floor', 'hypot', 'log', 'log10', 'log2', 'max', 'min', 'pow', 'random', 'sign', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'trunc'
Tienen la misma definición que en JavaScript. En particular, eso significa que log() es log base-e. La excepción es round, para el cual usamos nuestra propia definición.
Se admiten las siguientes funciones adicionales que no pertenecen a la biblioteca matemática de JavaScript:
index( foo, 2+3 )
es lo mismo que foo5
. El primer argumento debe ser un identificador (el índice anidado no está permitido). El segundo argumento debe evaluarse como un entero mayor o igual a 0. Si alguno de estos dos argumentos no es válido, se devuelve NaN. El tercer argumento se devuelve si los argumentos son válidos pero el resultado hace referencia a una variable que no existe. Si no se especifica, el tercer argumento toma como valor predeterminado NaN.Los números pueden ser
Si los widgets de la calculadora están contenidos dentro de un elemento con la clase calculator-container
, entonces los identificadores se limitan a este elemento. Esto le permite usar los mismos identificadores varias veces en la misma página sin que interfieran entre sí. Si el elemento de alcance tiene el atributo data-calculator-refresh-on-load="true"
, entonces los widgets de la calculadora se actualizan en la primera carga de la página antes de que el usuario interactúe con ellos. Tenga en cuenta que las etiquetas no se ven afectadas por el alcance y probablemente se dirigirán al siguiente elemento del documento que tenga el identificador correcto.
Por ejemplo:
<div class="calculator-container" actualización-de-la-calculadora-de-datos-al-cargar="true">{{etiqueta de calculadora|campo de alcance:}} {{calculadora|tipo=texto|id=campo de alcance|predeterminado=3.14}}<br>Esta fórmula se actualiza antes de la interacción del usuario: {{calculator|type=plain|formula=scopedfield|default=No value}}</div>Esta fórmula no se actualiza porque está en un ámbito diferente: {{calculator|type=plain|formula=scopedfield|default=No value}}
Produce lo siguiente:
scopedfield: 3.14
Esta fórmula se actualiza antes de la interacción del usuario: Sin valor
Esta fórmula no se actualiza incluso después de la interacción del usuario porque está en un ámbito diferente: Sin valor
En lugar de utilizar las clases CSS directamente, también puedes usar {{ Calculator ifenabled }} con el parámetro scoped.
Puede utilizar CSS para ajustar la visualización, ya sea a través de TemplateStyles o estilos en línea.
data-calculator-field-value
atributo como objetivo, por ejemplo, #calculator-field-fieldidhere[calculator-field-scopedfield^="3."] seleccionaría el campo si es >= 3.0 y < 4.0.Algunos ejemplos:
Ajustar el color del borde : 30
Superponer una imagen con coordenadas basadas en un widget de calculadora:
Altura: 178 cm. Cintura: 155 cm.
Es posible crear widgets en estilo MediaWiki (Codex) en lugar de en estilo OS. Puedes usar la mayoría de los widgets de Codex que tienen una versión solo CSS. Consulta https://doc.wikimedia.org/codex/latest/components/demos/
Muchos widgets de estilo códice tienen plantillas independientes. Al crear una etiqueta, la plantilla {{ Calculator label }} tiene un parámetro para generar una etiqueta de estilo códice
Consulte las páginas de documentos de plantilla individuales para ver todas las opciones.
Los usuarios que no tengan el gadget habilitado en sus preferencias o que tengan JS deshabilitado, no verán los cuadros de entrada. En su lugar, solo verán el valor predeterminado para cada cuadro. Con una buena elección del valor predeterminado, esto puede ser suficiente.
Por ejemplo, si tienes ''sin({{calculator|id=sine|type=text|default=0.5|size=4}}π)={{calculator|type=plain|default=1.00|decimals=2|formula=sin(sine*π)|id=sineres}}'' para hacer que sin( 0.5 π)= 1.00 , el usuario que no use js perderá la interactividad, pero aún verá la ecuación.
Si desea alternativas más sofisticadas, puede utilizar las clases CSS calculatorgadget-enabled
y .calculatorgadget-fallback
<div class="calculatorgadget-enabled" style="display:none">Este texto solo se muestra si el gadget está habilitado. {{calculator|type=text|size=20|default=100|id=xyz}} </div><div class="calculatorgadget-fallback">Este texto solo se muestra si el gadget está deshabilitado</div>
Lo cual produce:
Alternativamente, puede utilizar la plantilla {{ Calculator ifenabled }} para hacer esto.
Añade un widget de calculadora a la página. Al igual que una hoja de cálculo, puedes consultar otros widgets en la misma página.