2010-04-30 7 views
0

저는 CEWP (webpart)를 사용하고 거기에이 코드를 넣고 있습니다. 하지만이 코드는 <head> 태그 안에 들어 가지 않습니다. <head> 태그에이 코드를 삽입해야합니다.<head> 태그에 동적으로 자바 스크립트를 삽입하십시오

<script src="http://code.jquery.com/jquery-latest.js"></script> 

<script type="text/javascript"> 
$("*").each(function() { if ($(this).children().length == 0) { $(this).text($(this).text().replace('Respuesta','Responder')); } }); 
</script> 

어떻게하면됩니까? 이 코드가 CEWP 웹 파트에서 어떻게 작동할까요?

답변

3

먼저 문서 준비 시간에 실행되도록 설정하면 코드를 <head>에 넣을 수 있습니다.

그러나 여전히 작동하지 않습니다. 모두 태그를 반복하고 있습니다. 에 의해 처음 선택되는 <html>을 포함합니다.

<html> 요소 안에있는 모든 텍스트 (예 : 전체 문서 텍스트)를 읽은 다음 문자열을 바꾸고 다시 text()으로 작성합니다. <html> 요소의 이전 텍스트 및 요소 내용을 모두 하나의 간단한 텍스트 문자열로 바꾸십시오. 따라서 페이지의 다른 모든 요소가 파괴됩니다. 죄송합니다.

$(document).ready(function() { 
    $('*').each(function() { 
     for (var i= this.childNodes.length; i-->0;) { 
      var child= this.childNodes[i]; 
      if (child.nodeType===3) // TEXT_NODE 
       child.data= child.data.replace(/Respuesta/g, 'Responder'); 
     } 
    }); 
}); 

(변경 가능한 에지의 경우 무리가 양식 필드 및 기타 요소에 여전히 여기에있다 참고 :

은 무엇 당신이 원하는 것은 그것을 대체 모든 텍스트 노드를 찾아 별도의 문자열을 할 것입니다 그들 내부의 텍스트가 예상 한대로 작동하지 않을 수도 있습니다.)

+0

원하는 곳에 자바 스크립트를 넣을 수 있지만 _spBodyOnLoadFunctionNames.push ("myFunction")를 잊지 마세요. –

관련 문제