JavaScript personalizzato
Aggiungi JavaScript personalizzato al tuo sito di documentazione per widget di chat, analisi, integrazioni di terze parti e altre funzionalità lato client.
Il JavaScript personalizzato viene eseguito su ogni pagina del tuo sito di documentazione. Usalo per widget di chat, analisi o qualsiasi altro script lato client di cui hai bisogno.
Aggiungere JavaScript personalizzato
Crea un file JavaScript nella directory della documentazione e fai riferimento ad esso in docs.json:
{
"styling": {
"js": "/script.js"
}
}// Your custom JavaScript runs on every page
console.log('Hello from custom JS!');Jamdesk inserisce il tuo script direttamente nell'HTML della pagina. Viene eseguito durante il caricamento della pagina.
Rilevamento automatico
Senza styling.js, Jamdesk rileva i file .js nella directory radice del progetto. Inserisci un file script.js accanto a docs.json per includerlo.
my-docs/
├── docs.json
├── script.js ← auto-detected
├── introduction.mdx
└── getting-started.mdx
Configurare styling.js in docs.json disattiva il rilevamento automatico. Vengono utilizzati solo i file elencati.
.js nella radice del progetto, inclusi script di utilità come eslint.config.js o postcss.config.js. Elenca esattamente quali file includere con styling.js in docs.json.Più file
Includi più script passando un array:
{
"styling": {
"js": ["/chat.js", "/analytics.js"]
}
}Il rilevamento automatico include ogni file .js nella radice, ordinato alfabeticamente. analytics.js viene caricato prima di chat.js.
Esempi
Esempi CSS e JS abbina uno script al CSS. Aggiunge un pulsante flottante Ask AI e un'intestazione con il colore del brand.
Widget di chat (Crisp)
window.$crisp = [];
window.CRISP_WEBSITE_ID = "your-website-id";
(function () {
var d = document;
var s = d.createElement("script");
s.src = "https://client.crisp.chat/l.js";
s.async = 1;
d.getElementsByTagName("head")[0].appendChild(s);
})();Analytics personalizzati
// Track outbound link clicks
document.addEventListener('click', function (e) {
var link = e.target.closest('a[href^="http"]');
if (link && !link.href.includes(window.location.hostname)) {
console.log('Outbound click:', link.href);
// Send to your analytics service
}
});Widget di feedback
// Load a feedback widget after the page is ready
window.addEventListener('load', function () {
var s = document.createElement('script');
s.src = 'https://your-feedback-tool.com/widget.js';
s.setAttribute('data-project', 'your-project-id');
document.body.appendChild(s);
});Come funziona
La build legge i tuoi file JavaScript e li incorpora nell'HTML di ogni pagina. Il tag script si trova alla fine di <body>. Il DOM è disponibile quando il tuo codice viene eseguito.
Il JavaScript personalizzato viene eseguito anche in jamdesk dev (CLI 1.1.222 e successive). Testa lo script lì prima di pubblicare. Gli errori generati dallo script compaiono nella console del browser. window.__JAMDESK_DEV__ è true in jamdesk dev. Usalo per saltare codice valido solo in produzione, come le analisi:
if (!window.__JAMDESK_DEV__) {
// analytics, chat widgets and other production-only code
}
Se configuri il consenso ai cookie con integrations.cookies, il tuo script viene eseguito solo sul sito pubblicato, dopo che il visitatore ha dato il consenso.
Lo script viene eseguito una volta, quando un visitatore carica per la prima volta il sito. Cliccare un link all'interno della documentazione sostituisce il contenuto della pagina senza un ricaricamento completo. Lo script non viene eseguito di nuovo. Il codice che legge o modifica il contenuto della pagina dovrebbe osservare i cambiamenti di pagina.
Limitazioni
- Gli script vengono eseguiti su ogni pagina. Non c'è modo di indirizzarli a pagine specifiche
- Le modifiche hanno effetto alla tua prossima build
- Gli script sono incorporati nell'HTML, non serviti come file separati
- Preferisci le integrazioni integrate per le analisi. Gestiscono per te il consenso e le prestazioni
