7
votes

Conversion de marquage HTML côté client

J'ai essayé de créer un éditeur côté client qui permet à l'utilisateur final de créer du contenu dans HTML ou Markdown. L'utilisateur a deux onglets pour la commutation entre les deux. J'ai réussi à trouver du JavaScript qui convertit Markdown en HTML. Si un utilisateur a écrit le marquage et passe à l'onglet HTML, le HTML Equivilant est affiché. Je n'ai pas pu trouver de JavaScript qui convertit HTML en Markdown, seulement un script Python.

Le script Python est évidemment le côté serveur. Les onglets ne sont que des hyperliens avec un script là-bas. Y a-t-il un moyen de convertir le point HTML Markdown lorsque l'utilisateur clique sur l'onglet?


1 commentaires

Êtes-vous sûr de vouloir que les gens modifient directement le HTML? Au mieux la transition sera sans perte. Il y a beaucoup de choses qui ne peuvent pas être bien représentées dans Markdown. Par exemple, si j'ajoute ... , que voudriez-vous voir dans le markdown?


4 Réponses :


1
votes

Il vous suffit d'envoyer les données au serveur à l'aide d'Ajax, d'effectuer la conversion sur le serveur, puis de retourner les résultats sur le navigateur. En JQuery, c'est aussi simple que par E.g.:

$.ajax({
    type: "GET",
    url: <converter url>,
    data: <html>
    success: function(markdown_text){
        $('#id_container').text(markdown_text);
    }
    error: function(XMLHttpRequest, textStatus, errorThrown){
             alert('Error!');
    }
});


0 commentaires

2
votes

Pourquoi n'utilisez-vous pas WMD-Editor ? Il a la possibilité de prévisualiser le HTML.


0 commentaires

6
votes

N'hésitez pas à essayer ma lib, remarquez.js , pour le côté client HTML / DOM> Markdown

https://github.com/leeoniya/remarked.js

L'autre solution autour de vous pouvez essayer marqué , mais sachez qu'il ne prend pas en charge certaines fonctionnalités PHP-Markdown-Extra, comme l'analyse de jolies tables http://michelf.ca/projects/php-markdown/extra/#table

https://github.com/chjj/marked/


0 commentaires

14
votes

La réponse actuellement acceptée vous dit de le faire sur le côté serveur .

Pour vraiment faire Conversion du côté client , vous pouvez essayer l'une de ces bibliothèques (par ordre de popularité, mesurée par Github Stars):


0 commentaires