2009-05-28 2 views
0

은 윈도우 비스타/7 가젯을 개발하고, addTextObject를 (사용하여 텍스트),이 작품을 놓을 때 :jQuery 변수와 함께 addTextObject()가 작동하지 않는 이유는 무엇입니까?

var mytext = "Hello"; 
document.getElementById("background").addTextObject(mytext , "Verdana", 11, "white", 10, 10); 

하지만 변수로이 jQuery를 선택 작업에 ​​도착하지 못할 :

var mytext = $("#myid").text(); 
document.getElementById("background").addTextObject(mytext , "Verdana", 11, "white", 10, 10); 

작동하지 않고 빈 문자열 만 씁니다. 왜?

답변

0

이유를 알았습니다. 내 div의 내용이 jQuery를 사용하여 동적으로 추가되었습니다.

<div id="myid"></div> 

$("#myid").append("somedata"); 
var mytext = $("#myid").text(); 
System.Debug.outputString(mytext); // Empty 

가젯에서 어떤 이유로 든 작동하지 않습니다. 그것은

정적 콘텐츠는 가젯에서 작동합니까 ...하지만 일반 HTML 파일에서 작업을 수행합니다

<div id="myid">somedata</div> 

var mytext = $("#myid").text(); 
System.Debug.outputString(mytext); // Ok 

사람이 내가 사이드에서 동적으로 추가 된 내용을 조회 할 수있는 방법을 설명 할 수 있습니까? 업데이트 : This 내 문제가 해결되었습니다.

+0

나는 브라우저가 작업을 수행 할 수 있도록 컨트롤을 포기해야하는 경우가있었습니다. 이를 위해 setTimeout()에 의해 호출되는 함수에 코드를 저장했습니다. – Nosredna

+0

해결 방법을 찾았습니다. 다음을 참조하십시오. http://stackoverflow.com/questions/923489/is-there-a-way-to-query-html-xml-content-from-a-variable-using-jquery –

0

는 DOM이 완료되기 전에 아마 당신의 코드가 실행되는 $(document).ready

 

$(document).ready(function() { 
    $("#myid").append("somedata"); 
    var mytext = $("#myid").text(); 
    System.Debug.outputString(mytext); 
}); 
 

을보십시오.