2009-05-04 34 views
0

我有一个非常奇怪的错误正在进行。尽管从具有弹出功能的小工具中复制了角色的展开代码字符,但我无法让该展开式图表显示在我的小工具上。Vista边栏小工具没有显示弹出 - System.Gadget.Flyout.show没有设置为真

下面的代码:

function doFly(i){ 

var div = 'div_' + i; 
flyHTML = $(div).html(); 

if (System.Gadget.Flyout.show == false){ 

System.Gadget.Flyout.file = "flyout.html"; 
System.Gadget.Flyout.show = true; 
msgJS(System.Gadget.Flyout.show); 
} 

else{ 
System.Gadget.Flyout.show = false; 
} 


} 

的msgJS功能提供用于调试的一个ActiveX弹出。即使我在前一行中将.show设置为true,当我调用弹出窗口时,该值仍然为false。期间,我无法展示弹出窗口。起初我以为我失去了点击事件,但是如果我留在主要的小工具DOM中,点击正在注册,其余代码正确执行。

这是怎么回事.show根本不会被设置?我检查了已知的错误,并且它们都不适用于此。这令人生气。

回答

0

更新:这是我现在使用的代码:这表明代码没有抛出异常

功能doFly(我){

var div = 'div_' + i; 
flyHTML = $(div).html(); 

if (System.Gadget.Flyout.show == false){ 

    try { 
     System.Gadget.Flyout.file = "flyout.html"; 
     System.Gadget.Flyout.show = true; 
     $('a#teamr').text(System.Gadget.Flyout.show); 
    } 
    catch(e){ 
     $('a#teamr').text(e); 
    } 
} 

else{ 
    System.Gadget.Flyout.show = false; 
} 

,和值了。表演是假的。有一个与Sidebar相关的bug,小工具会失去焦点,并关闭弹出窗口。我只能想象我将不得不解决它。我的问题是:是什么导致失焦?离奇。