2016-10-18 2 views
0

코드가 innerHTML 인 html 요소에 저장되어있는 것을 얻을 수 있습니다. 렌더링 된 버전에서 콘텐츠를 복사하여 붙여 넣은 경우 사용자가 얻을 수있는 것을 보여줄 수있는 방법이 있습니까? 예를 들어사용자에게 표시되는 html 요소 얻기

, 당신은 사업부가 있다면

<div>&nbsp;&nbsp;&nbsp;Hello World <img alt="imageText" src="image/source"></img></div> 

I 당신은 모든 자식 노드의 텍스트 내용 얻기 위해 재귀 기능을 사용할 수 있습니다 " Hello World imageText"

+3

'이너 Text'를 클릭하면 이미지 텍스트가 닫히지 만 닫기는됩니다. –

+0

당신이 원하는 것은 무엇이든이 기능은 https://www.fullstory.com – Cristian

+0

가능한 중복 [자바 스크립트에서 HTML을 unescape하는 방법?] (http://stackoverflow.com/questions/1090056/how-to-unescape- html에서 자바 스크립트) – Niko

답변

2

문자열 얻고 싶은 것 :

에게

function getText(node) { 
 
    switch (node.nodeType){ 
 
    case Node.ELEMENT_NODE: 
 
     if (node.tagName === 'IMG') { 
 
     return node.getAttribute('alt'); 
 
     } else { 
 
     var children = Array.prototype.slice.call(node.childNodes); 
 
     return children.map(getText).join(''); 
 
     } 
 
    case Node.TEXT_NODE: 
 
     return node.textContent; 
 
    } 
 
} 
 

 
var div = document.querySelector('div'); 
 
console.log(getText(div));
<div>&nbsp;&nbsp;&nbsp;Hello World <img alt="imageText" src="image/source"></img></div>

+0

감사합니다.이 솔루션은 이미지 문제를 잘 해결합니다. – rtpax

관련 문제