0

私はWindows 7用の簡単なガジェットを学習の練習として開発しています。 ガジェットを初期化するには、onLOadのようなイベントの代わりにdocument.onreadystatechangeを使用するthisの記事(サブトピックガジェットとスクリプト)を読んでください。私も見てきたサンプルプロジェクトコードでそれを見てきました。これが私のプロジェクトのために思いついたものです。Windows 7ガジェットがロードされていません

document.onreadystatechange = function() 
{ 
    if(document.readyState == "complete") 
    { 
     System.Gadget.settingsUI = "settings.html"; //this line enables the settings UI 
     System.Gadget.onSettingsClosed = settingsClosed; 
    } 
} 

ただし、このスニペットを自分の仕事に使用すると機能しません。ガジェットの[オプション]ボタンが表示されません。私がonLoadを使用すると、それは動作します。私は2つのガジェットをインストールしました。それぞれ2つの方法を使用します。 1つはonLoad、もう1つはdocument.onreadystatechangeです。そして両方とも動作します!

私のガジェットではうまくいかない理由が混乱しています。私が見落としている重要な部分はありますか?

答えて

0

は異なるイベントにごonsettingsclosedを移動し、私はちょうどそのような設定のための私のスクリプトを持っていること

document.onreadystatechange = function() 
{  
    if(document.readyState=="complete") 
    { 
     var searchTags = System.Gadget.Settings.read("searchTags"); 
     if(searchTags != "") 
     { 
      searchBox.value = searchTags; 
     }  
    }   
} 

System.Gadget.onSettingsClosing = function(event) 
{ 
    if (event.closeAction == event.Action.commit) 
    { 
     var searchTags = searchBox.value; 
     if(searchTags != "") 
     { 
      System.Gadget.Settings.write("searchTags", searchTags); 
     } 
     event.cancel = false; 
    } 
} 
+0

で関数を呼び出す 、これらの線に沿って何かをしてみてください。問題は、設定UIを表示するオプションボタンがガジェットをまったく表示しないことです。この行 'System.Gadget.settingsUI =" settings.html ";'は実行する必要がありますが、今のところ、その関数には入りません。 – Isuru

+1

他のプログラムでもこれを使用していますか?私は、あなたが1つのガジェットがそれを使用していると言っているが、他に何が働いていないものを除いてそれを設定しているのか知っていますか? Sidebar.Exeのどのバージョンを実行していない場合は?バージョン1.00以降が必要です。これ以上のことがない場合は、 –

+1

あなたのHTMLページは正しくフォーマットされていますか?私はそれが、ちょうど確認したいと信じています –