2011-03-10 4 views
0

나는 약 700kb의 평범한 텍스트 문서가 아주 많습니다. 평범한 텍스트는 매우 커서 HTML로 변환하는 클라우드에서 서식을 지정해야하지만 필요한 것은 단 한 가지뿐입니다. 바꾸기, 브라우저에서 표시 할 수 있도록 HTML 형식을 지정하면 이 굵게 표시됩니다.기울임 꼴입니다. 일반 텍스트에서 굵은 동안 그들은 다음과 같이이다 :이 같은자바 스크립트를 사용하여 일반 텍스트를 서식하는 가장 빠른 방법

Not on bold... **bold text here** not bold here 

그리고 기울임 :

Not italic... *italic text* no italic 

그냥 StackOverflow의 그들의 서식 않지만, 문제는 내가 그것을 많이 만들 필요가있다처럼 더 빨리, 텍스트가 너무 커서 ... 내 아이디어 중 하나는 페이지 슬라이드를 추가하는 것이 었습니다. 그래서 스크립트는 텍스트의 일부분 만 포맷해야합니다. 사용자가 페이지를 변경하면 스크립트는 다시 호출 할 수 있지만 문제는이 코드를 어떻게 만들 수 있는가하는 것입니다.

+0

상상력에 의해 700Kb가 커지지 않습니다 .... –

+0

바이너리는 아니지만 일반 텍스트는 –

답변

1

function boldAndItalicize(text) { 
    return text.replace(/&/g, '&amp;').replace(/</g, '&lt;') 
     .replace(/(\*+)([^*]{1,1024})(\*+)/g, 
       function (whole, open, content, close) { 
       if (open.length === close.length) { 
        switch (open.length) { 
        case 1: return '<i>' + content + '</i>'; 
        case 2: return '<b>' + content + '</b>'; 
        } 
       } 
       return whole; 
       }); 
} 

너무 느린

인가?

휴식하려는 경우 기울임 꼴 또는 굵게 표시된 부분으로 분할하지 않으려면 중단 점을 스캔해야합니다.

+0

입니다. 어떻게'text' 인수에 텍스트 파일을 삽입해야합니까? –

+1

@ Nathan, 최선의 방법은 아마도'XmlHTTPRequest'를 통해 그것을 가져 오는 것일 것입니다. –

+0

하지만 원격 파일이 아닌 로컬 파일입니다. 어떻게 만들 수 있습니까? –

1

많은 div에서 그것을 나누어서 표시 할 수 있습니다 (예 : 사용자가 스크롤하여 콘텐츠 영역에 들어감).

어떻게해야할지 모르겠지만 이미 Jquery에서 비슷한 것을 발견하고 일부 코드를 얻을 수 있습니다. 예를 들어이 같은

뭔가 : http://www.infinite-scroll.com/infinite-scroll-jquery-plugin/

관련 문제