سؤال

ايم باستخدام محرر WMD للتسجيل في مشروعي ولدي مشكلة في علامات التعليمات البرمجية: إذا أدخلت مقتطفا كود، فلن يتحول علامة التجسيد إلى HTML بشكل صحيح يتم تحويلها "<p>"العلامات ...<code>"العلامات هي علة من محرر التسجيل WMD؟ وكيف يمكنني حل هذه المشكلة؟

هل كانت مفيدة؟

المحلول

كنت فعلا تعمل على هذا للحصول على إصداري الثابت من تحرير WMD. باستخدام Regex يمكنك أن تخلع بسرعة من الرائدة والزائدة <p> العلامات التي هي أبرزها السببين في الكثير من المشاكل:

html = html.replace(/^<p>/g, '').replace(/<\/p>$/g, '');

لفرض هذا في WMD ..

(أنا أومع أنك تستخدم شوكة محرر WMD) العثور على هذا الجزء من التعليمات البرمجية وتغييره على النحو التالي:

var convertToHtml = function(){

    if (wmd.showdown) {
        var markdownConverter = new wmd.showdown.converter();
    }
    var text = inputBox.value;

    var callback = function(){
        inputBox.value = text;
    };

    if (!/markdown/.test(wmd.wmd_env.output.toLowerCase())) {
        if (markdownConverter) {
            inputBox.value = markdownConverter.makeHtml(text);

            // Add this line here:
            inputBox.value= inputBox.value.replace(/^<p>/g, '').replace(/<\/p>$/g, '');

            top.setTimeout(callback, 0);
            }
        }
    return true;
};

لم تختبر، ولكن يجب أن تحصل على الفكرة.

نصائح أخرى

مع الجواب السيد T. الحجر. لقد فعلت في WMD التي استخدمتها، لإزالة

<p> ..article.. </p>

أن تكون ..

وهنا رمز WMD.JS: (السطر: 910)

if (converter) {
    text = converter.makeHtml(text);
    //new code here
    text= text.replace(/^<p>/g, '').replace(/<\/p>$/g, '');
}

كتبت هذا في الإجابة لأنني سعيد جدا بحل مشكلتي في غضون أسبوع. شكرا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top