2013-05-07 8 views
7

내 사무실에 사용자 지정 작성된 CMS 응용 프로그램의 일부로 Xinha 편집기를 사용하고 있습니다. 사용자가 부품 번호를 강조 표시하고 "부품"버튼을 클릭하도록 허용하려고합니다. 선택된 HTML/텍스트가 <part></part>으로 캡슐화 되기만하면됩니다 (선택한 부분에 대한 정보가있는 페이지에 대한 링크를 제공하기 위해 표시 될 때 처리됩니다).Xinha 사용자 지정 단추

나는 정말로 여기에서 고심하고있다. 이것은 내가 지금까지 가지고있는 코드이다. 내가 선택한 특정 위치에서 선택한 텍스트를 찾아서 바꾸기를 수행해야한다고 가정하지만 선택한 범위에서 HTML에 액세스하는 방법에 대한 문서를 찾을 수 없습니다.

xinha_config.btnList["part"] = [ 
    "Part Number", 
    "/xinha/images/part.png", 
    true, 
    function(e) { 
     var part = e.getSelectedHTML(); // This is the selected part number 

    } 
]; 

답변

1

그 때문에 조금 더 긴 절차를 따라야합니다. 난 당신이 단계를 제공하고

..

당신이 선택한 텍스트의 부모를 캡처해야합니다)

1 <part>에서 선택한 텍스트를 캡슐화 할 때,

2) 부모의 innerHTML을 캡처

3)은 43

4) 제 0 태그를 삽입 말하는 내부의 HTML하자 선택의 시작 계수를 찾기여기에이 카운트에 43 + 6 (TAG) = 49 선택한 텍스트가 여기에서 시작됩니다.

5) 이제 선택한 텍스트의 길이가 49+가되면 12 = 49 + 12 = 61이됩니다. 여기에 당신이 닫는 태그 </part>

를 삽입하고 당신은 당신의 임무를 완료 ..

편집, 문서 : Link

내가 도움이 될 것입니다 구성 변수 목록을 확인 할 수 있었다,

Link 3 여기에 xinha_config >> 형식 블록이 있습니다. http://trac.xinha.org/wiki/Documentation/ConfigVariablesList#xinha_config.formatblock

몇 가지 방법을 추가 할 수 있다면 나의 이해

과 다른 방법에 따라 수행해야이 아래 <part> ...

... 
"Formatted": "pre", 
"Part": "part" 
} 

... 주변이 pageStyle의 세부 사항을 줄 것이다, custom style입니다. 그것을 사용하여 HTML의 inbuilt 탭을 사용자 정의 할 수 있습니다 .. 말하자면, 또는 다른 것.

그리고 노란색으로 사용자 정의 할 수 있습니다. 나는이 도움이되기를 바랍니다

xinha_config.pageStyle = 
    'p { color:red; }\n' + 
    'h1 { color:yellow; }\n' + 
    'a {text-decoration:none; }' + 
    'span{background-color:yellow; }'; 

...

+0

은 오해하지 마세요 -이 뒤에 논리를 이해합니다. 나는 수십 년 동안 수십 개의 프로그래밍 언어에서 비슷한 일을 해왔다. 내 질문에 - 내가 선택한 범위에서 HTML에 액세스하는 방법에 대한 문서를 찾을 수 없습니다. "라고 말했듯이 - 당신이 넣은 시간 동안 감사합니다. – Dutchie432

+0

내가보고 있어야하는 특정 항목이 있습니까? 나는 문서들을 아주 잘 다듬었다. – Dutchie432

+0

나는 대답을 업데이 트했습니다 .. Pls는 편집 후 대답을 참조하십시오 : .. :) 나는 이것이 할 것이라고 확신합니다 .. – MarmiK