Question

J'utilise le processeur de démarquage Maruku. Je voudrais que cela

*blah* blah "blah" in [markdown](blah)

<script src="http://code.jquery.com/jquery-1.4.2.min.js"></script>
<script>
...do stuff...
</script>

mais il se plaint quand je rends avec une multitude d'erreurs. La première étant

 ___________________________________________________________________________
| Maruku tells you:
+---------------------------------------------------------------------------
| Could you please format this better?
| I see that "<script type='text/javascript'>" is left after the raw HTML.
| At line 31
|   raw_html     |<script src='http://code.jquery.com/jquery-1.4.2.min.js' /><script type='text/javascript'>|
|       text --> |//<![CDATA[|

et puis le reste semble que l'analyseur va les noix. Ensuite, il rend le javascript dans un div sur la page. Je l'ai essayé de faire un bloc CDATA et l'espacement supplémentaire entre les jquery et mon script.

Aide?

Était-ce utile?

La solution

J'ai eu ce même problème, mais j'ai réussi à JavaScript pour apparaître dans mon code en mettant une nouvelle ligne après la balise d'ouverture.

Autres conseils

autre solution que le travail pourrait, dans certains cas: (la réponse choisie n'a pas fonctionné pour moi quand je cherchais à intégrer un exemple CodePen)

  • ajouter à votre mise en page par défaut:

    <!-- Custom JavaScript files set in YAML front matter -->
    {% for js in page.customjs %}
    <script async type="text/javascript" src="{{ js }}"></script>
    {% endfor %}
    
  • Dans les postes où vous avez besoin des fichiers JavaScript, vous pouvez les ajouter à la matière avant YAML comme ceci:

    ---
    layout: post
    title: Adding custom JavaScript for a specific post
    category: posts
    customjs:
     - http://code.jquery.com/jquery-1.4.2.min.js
     - http://yourdomain.com/yourscript.js
    ---
    

Le async pourrait ne pas être nécessaire ou voulu, mais vous pouvez probablement ajouter que comme paramètre dans customjs. (Voir avant YAML matière pour Jekyll et listes imbriquées pour plus de détails )

Markdown supports inline XHTML, mais pas avec Javascript.

Vous pouvez utiliser pandoc , qui gère cette entrée (et javascript général) très bien.

Je trouve que échapper à la fermeture « > » symbole à la fois, l'ouverture et la fermeture des balises « script », affiche correctement, par exemple:

  • Si vous tapez le follwing:

    <script\>... javascript code...</script\>
    
  • Il sera rendu comme ceci:

    <script>... javascript code...</script>
    

C'est juste mes deux cents.

Pour mon expérience, Markdown texte outpus javascript sous forme de texte aussi longtemps que vous supprimez le formatage du code qui peut confondre démarquage.

  1. supprimer les commentaires de javascript, comme / * ... * / est traduit
  2. supprimer le retrait de l'espace à l'avant de chaque ligne.

    peut être inséré selon votre indentation.

En fait ce que je fais est d'examiner le code HTML généré et savoir ce que les étiquettes supplémentaires sont insérées entre mon code javascript par Markdown. Et supprimer la mise en forme qui génère la balise supplémentaire.

Une bonne idée est d'avoir locale et les sources de nuage séparées:

Dans le fichier de message:

cloudjs:
 - //cdnjs.cloudflare.com/ajax/libs/d3/3.5.3/d3.min.js
 - //cdnjs.cloudflare.com/ajax/libs/topojson/1.6.9/topojson.min.js
localjs:
 - datamaps.world.min.js
 - custom.js  

Dans le fichier par défaut après l'inclusion de pied de page:

   {% for js in page.cloudjs %}

        <script type="text/javascript" src="{{ js }}"></script>

    {% endfor %}


    {% for js in page.localjs %}

        <script type="text/javascript" src="{{ "/assets/scripts/" | prepend: site.baseurl | append: js }}"></script>

    {% endfor %}

Indentez la première ligne contient

scroll top