2016-10-25 6 views
1

Я хотел бы higlight часть блока кода, который находится внутри раздела на моем сайте:Выделите часть DIV

<section highlight-js-content=".highlight"> 
    <pre class="source-code-box"> 
    <code class="source-code java highlight">{{sourceCode}}</code> 
    </pre> 
</section> 

я получаю выход, как это (Исходник):

import aaaaa; 
import aaaab; 
import aaaac; 

    public class TestA { 
    private final Integer a; 

    TestA(final Integer a){ 
    this.a = a; 
    } 

    getA(){ 
    return this.a; 
    } 

    getTwoA(){ 
    return 2 * this.a; 
    } 
} 

давайте что Я хочу, чтобы весь метод getA() был выделен в разделе вывода.

Как я могу это сделать?

PS. Я хотел бы сделать это без jQuery.

РЕДАКТИРОВАТЬ:
решаемые:

Я нашел решение в следующей теме: Inject <input> in innerHTML angular 2

ответ

0

, как я могу видеть, есть только один способ достигнуть этого вручную путем добавления промежуток вокруг части кода в вашей базе данных, которую вы хотите выделить, а затем используйте [innerHTML]="sourceCode", чтобы скопировать код

<span class='higlightCode'> 
getTwoA(){ 
    return 2 * this.a; 
    } 
</span> 

Свяжите HTML, как

<section highlight-js-content=".highlight"> 
    <pre class="source-code-box"> 
    <code class="source-code java highlight" [innerHTML]="sourceCode"></code> 
    </pre> 
</section> 

выход будет что-то вроде этого

.highlightCode 
 
{ 
 
    background-color:#ffeb00 
 
}
<section highlight-js-content=".highlight"> 
 
    <pre class="source-code-box"> 
 
    <code class="source-code java highlight"> 
 
import aaaaa; 
 
import aaaab; 
 
import aaaac; 
 

 
    public class TestA { 
 
    private final Integer a; 
 

 
    TestA(final Integer a){ 
 
    this.a = a; 
 
    } 
 
<span class='highlightCode'> 
 
    getA(){ 
 
    return this.a; 
 
    } 
 
</span> 
 
    getTwoA(){ 
 
    return 2 * this.a; 
 
    } 
 
} 
 
    </code> 
 
    </pre> 
 
</section>

+0

Может быть, я missunderstand, но я отвесный исходный код из необработанного файла, как : https://raw.githubusercontent.com/Vedenin/useful-java-links/master/helloworlds/3.8-json/pom .xml. У меня нет кода в базе данных. – ulou

+0

, если вы получаете данные из необработанного файла, как узнать, какую часть кода вы хотите выделить, - это любая их функция, которую вы хотите выделить, в этом случае вам нужно искать эту функцию в 'sourceCode', и вы должны добавить этот диапазон вокруг него –

+0

Как я знаю, вы не можете вводить директиву HTML в переменной типов/javascript, но я проверю ее. – ulou