Frage

Ich bin mit dem Maruku Abschlags-Prozessor. Ich möchte diese

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

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

, aber es beschwert sich, wenn ich es mit einer Vielzahl von Fehlern machen. Die erste ist

 ___________________________________________________________________________
| 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[|

und dann scheint der Rest wie die Parser Nuss werden. Dann macht es das Javascript in ein div auf der Seite. Ich habe versucht, es einen CDATA-Block und zusätzlichen Abstand zwischen dem jquery und meinem Skript zu machen.

Hilfe?

War es hilfreich?

Lösung

Ich hatte das gleiche Problem, aber ich schaffte es JavaScript zu bekommen in meinem Code angezeigt werden, indem eine neue Zeile nach dem Starttag setzen.

Andere Tipps

Verschiedene Lösung, dass funktionieren könnte in einigen Fällen: (die gewählte Antwort hat für mich nicht, wenn ich ein CodePen Beispiel einzubetten versuche)

  • Fügen Sie diese auf Ihrem Standardlayout:

    <!-- Custom JavaScript files set in YAML front matter -->
    {% for js in page.customjs %}
    <script async type="text/javascript" src="{{ js }}"></script>
    {% endfor %}
    
  • In Beiträge, wo Sie einige JavaScript-Dateien benötigen, können Sie diese in der Sache YAML Front hinzufügen wie folgt:

    ---
    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
    ---
    

Die async möglicherweise nicht notwendig oder gewünscht sein, aber Sie könnten wahrscheinlich, dass als Parameter in customjs hinzuzufügen. (Siehe YAML Titelei für Jekyll und verschachtelte Listen für Details )

Markdown unterstützt die Inline-XHTML aber nicht Javascript.

Das Beispiel geben sie auf ihrer Website zeigt ein leeres <script> Tag eine neue Zeile enthält. Vielleicht ist es?

Sie könnten verwenden pandoc , die diese Eingabe behandelt (und Javascript im Allgemeinen) gut.

Ich fand, dass die Schließung zu entkommen ‚>‘ Symbol in beide, die das Öffnen und Schließen ‚script‘ Tags, wird es korrekt angezeigt werden, zum Beispiel:

  • Wenn Sie die follwing eingeben:

    <script\>... javascript code...</script\>
    
  • Es wird wie folgt wiedergegeben werden:

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

Das ist nur meine zwei Cent.

Zu meiner Erfahrung Abschlag wird outpus Javascript Text als Nur-Text, solange Sie den Code entfernen, dass die Formatierung Abschlag verwirren kann.

  1. Entfernen Kommentare von Javascript, as / * ... * / zu übersetzt
  2. entfernen Sie den Raum Einzug in der Vorderseite jeder Zeile.

    kann nach Ihrem Einzug eingefügt werden.

Im Grunde, was ich tue, ist die erzeugte HTML zu überprüfen und herauszufinden, was zusätzliche Tags in zwischen meinem JavaScript-Code von Abschlag eingefügt werden. Und entfernen Sie die Formatierung, dass die zusätzlichen Tag erzeugt.

Eine gute Idee ist es, lokale zu haben und Cloud js Quellen getrennt:

In der post-Datei:

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  

In der Default-Datei nach der Fußzeile Inklusion:

   {% 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 %}

Just einrücken die erste Zeile enthält

scroll top