2010-06-20 4 views
5

브라우저에서 단어를 두 번 클릭하면 단어가 선택되고, 세 번 클릭하면 전체 단락이 선택됩니다.HTML 사용성 질문 - 더블 클릭하여 텍스트 선택

나는 익명 사용자에 대한 서명이 자동으로 생성됩니다 위키를 조정하고있어 그들과 같이 :

--- // <ip.ad.dr.ess> //

은 " --- "은 —을 생성합니다. //는 이탤릭체 텍스트이고, <em> </em >을 생성합니다.

내가 조정 한 것처럼 이것이 작동하는 방식입니다. 이제는 유용성에 대해 궁금합니다.

내 질문은 : IP 주소를 두 번 클릭하면 전체 주소와 주소 만 선택된다는 마크 업을 생성하는 방법은 무엇입니까?

마크 업 언어는 중요하지 않지만 HTML로 솔루션을 제공 할 수 있지만 wiki (dokuwiki)에만 해당하는 것이 좋습니다.

감사합니다.

+0

이것은 확실히 해결할 수 있지만 솔루션은 복잡 할 수 있습니다. 이게 뭐야? 위키가 자동으로 내용을 추가하지 않도록 위키를 변경하는 것이 더 쉽지 않을까요? –

+0

나는 그 내용을 추가하기 위해 그것을 조정하는 사람이다. 그것은 작동하지만 지금은 접근성에 대해 궁금합니다. – Flavius

+0

이것은 무엇입니까? 접근성이란 무엇을 의미합니까? –

답변

5

모두에게 감사하지만 경계가없는 읽기 전용 텍스트 필드와 배경색의 배경색을 사용하여 모든 작업을 처리했습니다.

두 번 클릭하면 클라이언트 쪽 스크립트에 의존하지 않고 예상대로 작동합니다.

2

HTML로 할 수 없습니다. 어쩌면 자바 스크립트로. 기본적으로 특정 영역에서 더블 클릭을 감지 한 다음 적절한 텍스트를 선택합니다.

편집 :

여기 W3C 호환 브라우저에서이를 수행하는 방법 (예를 들어, 파이어 폭스, 그것은 아마 W3C 호환 브라우저 아닌 다른 텍스트 선택 모델을 사용하는 IE에서 작동하지 않습니다)입니다 :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<html> 
    <head> 
     <script type="text/javascript"> 
      function select(elem) { 
       var sel = window.getSelection(); 
       var range = sel.getRangeAt(0); 
       range.selectNode(elem); 
       sel.addRange(range); 
      }    
     </script> 
    </head> 
    <body> 
     <p>a simple paragraph, this is 
      <span onclick="select(this);">clickable area</span> 
      when this 
      <span ondblclick="select(this);">span tag is double-clicked</span> 
      then they will be selected 
     </p> 
    </body> 
</html> 
+0

최신 크롬에서 함수의 첫 번째 매개 변수로 얻을 수있는 것은 이벤트이므로 'e'와 'elem'으로 매개 변수를 e.target으로 바꿔서 멋지게 작업했다. – haridsv

+0

'Event' 문서에 따르면 첫 번째 매개 변수는 실제로 요소가 아니라 이벤트 객체 자체입니다. https://developer.mozilla.org/en/docs/Web/API/Event를 참조하십시오. 편집 : 당신이 명시 적으로 첫 번째 매개 변수로 'this'를 전달하는 것으로 나타났습니다. – haridsv

+0

@haridsv : addEventListener()를 사용하여 이벤트 처리기를 연결하는 경우 올바른 방법입니다. 이벤트가 여기에있는 @onclick 속성과 함께 인라인으로 첨부되면 매개 변수는 처리기에 전달 된 값 (이 경우 요소 인 'this')에 의해 결정됩니다. 요즘에는 addEventListener() 또는 jquery를 눈에 잘 띄지 않게 부착하는 것이 onclick 속성에 연결하는 것보다 더 나은 방법 일 것입니다. –

관련 문제