Разработка технической документации и технические писатели Технические писатели и разработка технической документации

 obmen_soobsheniyami.png Чат для технических писателей 
 Зарегистрируйтесь
Страницы: 1
RSS
Возможно ли предварительное указание точного расположения отдельного контента?
 
Здравствуйте!

Возможно ли в Dr. Explain реализовать схему, показанную на рисунке? Необходимо заранее указать программе точное расположение отдельных кусков текста  в выходном документе. В качестве кусков имеются ввиду не отдельные топики, а именно части текста внутри контента одного топика.
 
Изменено: zukatoka - 21.01.2015 06:21:11
 
Откройте ваш проект в Dr.Explain, а затем проделайте следующее:

В ПРИВЕДЕННЫХ НИЖЕ ОТРЫВКАХ КОДА В НАЧАЛЕ И В КОНЦЕ НУЖНО УБРАТЬ ПРОБЕЛ ВНУТРИ "sc ript" ЧТОБЫ БЫЛО "script"
  1. Перейдите в меню "Настройки->Настройки проекта". В левой части выберите "HTML экспорт", а в нижней части правой в разделе "Структура страницы" нажмите на кнопку "Настроить".
  2. В открывшемся диалоге "HTML шаблон и раскладка" нужно в левом верхнем углу отметить флажок "Детальная настройка". При этом в левой части станет видимой кнопка "До тега BODY, внутри тега HEAD". Нажмите эту кнопку и в правой части в текстовое поле введите следующий код:

    Код
        <sc ript type="text/javascript">
              function updateElement(element, sourceUrl, partId)
              {
                 $.ajax({
                    url: sourceUrl,
                    dataType: "html"
                 })
                 .done(function(data, textStatus, jqXHR) {
                    var t = $(data);
                    
                    var curDiv = t.find("#" + partId + "Begin").parent("div")[0];
                    var siblings = new Array();
                    var cur = $(curDiv);
                    while (true)
                    {
                       if (cur.length == 0)
                          break;
                       siblings.push(cur[0]);
                       if ($(cur).find("#" + partId + "End").length == 1)
                          break;
                       cur = $(cur).next();
                    }
                    var insertion = $("<div></div>");
                    $(siblings).each(function(){
                       insertion.append($(this));
                    });
                    //var t = data;
                    //alert(t);
                    $(element).empty().prepend(insertion);
                 //   alert("second success");
                 })
                 .fail(function(jqXHR, textStatus, errorThrown) {
                    console.log(errorThrown);
                    alert("error: status = " + textStatus + ", errorThrown = " + errorThrown);
                 });
                 }
        </sc ript>
    

  3. Нажмите OK / OK, чтобы сохранить изменения в настройках.
  4. Создайте раздел, фрагменты которого будут показываться в других разделах. В левом нижнем углу в поле "Имя файла" введите "tempfrag".
  5. В этом разделе перед (можно в начале абзаца) текстом, который вы хотите показывать в качестве фрагмента, вставьте HTML-фрагмент (комбинация Ctrl+Shift+S в редакторе). В появившемся окне введите следующий код:
    Код
     <div id="partOneBegin"></div>

    и нажмите OK. Вставьте другой фрагмент в конце текста:
    Код
     <div id="partOneEnd"></div>

  6. В том разделе, в котором вы хотите показать фрагмент, добавьте HTML-фрагмент с кодом
    Код
     <sc ript type="text/javascript">
     $(document).ready(function(){
        updateElement(".m-pageContent__side__header", "tempfrag.htm", "partOne");
     });
     </sc ript>
    

Если нужно, чтобы фрагмент отображался в нижней части, поменяйте ".m-pageContent__side__header" на ".m-pageContent__side__footer", а чтобы показывался внутри основной части - на ".description_on_page".

Здесь "partOne" - это идентификатор фрагмента. Для нескольких фрагментов текста идентификаторы должны быть разными. Саму страницу "tempfrag.htm" можно создавать вручную, например, в текстовом редакторе, либо в отдельном проекте, а после HTML-экспорта загружать в ту же папку, куда был загружен результат HTML-экспорта проекта со вставками.

Проект, демонстрирующий описанное выше, находится в прикрепленном архиве.
Страницы: 1
Читают тему