2012-02-24 9 views
9

Se dovessi scrivere una linea di JavaScript per impostare un attributo di stile di un elemento che potrebbe assomigliare a questo (questo esempio: "larghezza"):accesso il prefisso fornitore -webkit- in JavaScript

document.getElementById('myDiv').style.width="50px"; 

e se c'è un trattino nell'elemento CSS sarebbe simile a questa (questo esempio: "margin-top"):

document.getElementById('myDiv').style.marginTop="15px"; 

Ma come faccio ad accedere il prefisso -webkit-, se voglio dare uno stile come questo esempio:

{-webkit-transition: width 1s;} 

risposta

20

si hanno due opzioni:

  • style["-webkit-transition"]
  • style.WebkitTransition

Il primo lavora direttamente. La seconda notazione si chiama caso cammello e foo-bar-baz diventa fooBarBaz. Di conseguenza, quando una stringa di un caso non cammello inizia con -, la prima lettera è in maiuscolo in maiuscolo.

+3

Grazie per la risposta! Questo [articolo] (http://www.javascriptkit.com/javatutors/setcss3properties.shtml) suggerisce una sintassi simile, ma perché la lettera pugno in 'msTransform' non è maiuscola? –

2

Se non si desidera continuare a scavare su quelle proprietà di stile fastidiosi e le loro convenzioni di denominazione è sempre possibile utilizzare jQuery per mantenere le cose semplici.

$('#myDiv').css("-webkit-transition", "value");