Javascript 为什么';t addTextObject()和jQuery变量work?
在开发Windows Vista/7小工具并使用()输出文本时,以下操作有效:Javascript 为什么';t addTextObject()和jQuery变量work?,javascript,jquery,windows-desktop-gadgets,Javascript,Jquery,Windows Desktop Gadgets,在开发Windows Vista/7小工具并使用()输出文本时,以下操作有效: var mytext = "Hello"; document.getElementById("background").addTextObject(mytext , "Verdana", 11, "white", 10, 10); 但我无法将此jQuery选择器放入变量中工作: var mytext = $("#myid").text(); document.getElementById("background")
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);
它不工作,它只写一个空字符串。
为什么?我找到了原因。
my div中的内容是使用jQuery动态添加的
<div id="myid"></div>
$("#myid").append("somedata");
var mytext = $("#myid").text();
System.Debug.outputString(mytext); // Empty
$(“#myid”).append(“somedata”);
var mytext=$(“#myid”).text();
System.Debug.outputString(mytext);//空的
出于某种原因,这在小工具中不起作用。
它在一个普通的HTML文件中工作
静态内容在小工具中不起作用:
<div id="myid">somedata</div>
var mytext = $("#myid").text();
System.Debug.outputString(mytext); // Ok
somedata
var mytext=$(“#myid”).text();
System.Debug.outputString(mytext);//好啊
有人能解释一下我如何在侧边栏中查询动态添加的内容吗?
更新:
解决了我的问题。试试看
可能您的代码在DOM完成之前运行。我曾经遇到过这样的情况,为了让浏览器能够工作,我不得不放弃控制权。为此,我将代码放入一个由setTimeout()调用的函数中。我找到了一个解决方法,请参见此处:
$(document).ready(function() {
$("#myid").append("somedata");
var mytext = $("#myid").text();
System.Debug.outputString(mytext);
});