为什么addTextObject()与jQuery变量不起作用?

时间:2009-05-28 21:20:42

标签: javascript jquery windows-desktop-gadgets

开发Windows Vista / 7小工具,并使用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);

它不起作用,它只写一个空字符串。 为什么呢?

2 个答案:

答案 0 :(得分: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解决了我的问题。

答案 1 :(得分:0)

尝试$(document).ready


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

也许你的代码在DOM完成之前就已经运行了。