2011-06-23 13 views
13

ho notato che jquery's beta template plugin sta usando, l'attributo di tipo "text/x-jquery-tmpl"Utilizzando attributo type personalizzato in <script> tag come testo di jQuery/x-jquery-tmpl

esempio

<script type="text/x-jquery-tmpl"> 

Non ho visto l'uso personalizzato dell'attributo type in passato. Qualcuno ha visto esempi attuali di questo in uso o forse dei semplici sviluppatori mortali come io posso usare questo nel nostro codice?

Presumo che si tratti di un tipo MIME, tuttavia avrei pensato che il supporto del tipo MIME fosse valido per il browser. Quindi supponevo che i tipi MIME personalizzati non sarebbero supportati?

+0

Si prega di notare il modello di plugin per jQuery non è più in fase di sviluppo è se qualcuno si imbatte in questa domanda ora. –

+0

La linkedin api ha anche alcuni buoni esempi di utilizzo dell'attributo type https://developer.linkedin.com/documents/javascript-api-tutorial –

risposta

14

Il tipo indica effettivamente quale tipo di script è presente. Se il browser non lo capisce, dovrebbe ignorarlo. In questo caso, è un modo comodo e semantico per includere la fonte del modello senza visualizzarlo sullo schermo.

Generalmente con il modello jQuery, gli viene assegnato un ID e si riferiscono in tal modo alla chiamata $ (id) .tmpl.

sceneggiatura def qui: http://www.w3.org/TR/html401/interact/scripts.html#idx-scripting_language

esempi di tmpl qui: http://api.jquery.com/tmpl/

+0

Grazie a @Wesley Tarle, quindi anche se il browser non sa come "renderizzare/interagire" con esso, altri script possono? per esempio. jQuery può interagire con il modello, anche se il browser non sa di cosa si tratta? –

+1

sì, penso che il motore di template jQuery estrae il contenuto dalla memoria tag di script con .innerHTML e vada in città. –

+0

Grazie a @Wesley Tarle, conosci altri esempi oltre al template jQuery? Come è buffo visto che ho sempre visto il template jQuery usare questa funzione. –

3

No, MIME viene fornito dal server per identificare le risorse. Il browser agisce quindi sui tipi che riconosce.

Sì, nella connessione HTTP il browser elenca i tipi che può riconoscere in modo che il server possa scegliere i tipi che si adattano meglio (un esempio qui sarebbe HTML 5 e video, dove si hanno alcune opzioni di codec e il browser può supportare solo un sottoinsieme).

In questo caso, il MIME specifico aiuta a segnalare al browser un avviso: "Questo non è normale Javascript, non agire come se fosse".

+1

Grazie a @Pere, quindi come fa il browser a sapere come interpretarlo nel template jquery Ad esempio, come immagino che i browser non abbiano ancora implementato x-jquery-tmpl? Forse javascript può ancora interagire con esso? –

+0

Non sono sicuro che il browser faccia qualcosa lì dentro, probabilmente è Javascript che agisce, ma non conosco il meccanismo esatto, mi dispiace per quello. –

+0

Nessun problema grazie a @Pere, hai visto qualche esempio/scrivi su altri "tipi" per i tag dello script? –

Problemi correlati