我一直在使用Windows SideBar Gadget,其中有多個彈出頁面。當我去顯示一個,我想檢查它是否已經激活,所以我想我可以檢查System.Gadget.Flyout.file的值。但是,當我按下導致此彈出窗口彈出的按鈕控件時,小工具的背景消失。在我的調試消息中,我發現腳本停止了該行的位置。檢查System.Gadget.Flyout.file的值
這裏是有問題的行:
if (!System.Gadget.Flyout.show && System.Gadget.Flyout.file != "results.html")
{
....
}
這是很奇怪的,因爲我可以設置該文件,但不檢查。查看MSDN文檔,文件屬性既是一個getter也是一個setter,所以應該沒有問題。任何人都有我可以使用的解決方案來檢查哪些文件/文檔當前處於活動狀態?
編輯 - 這是在代碼的更多詳細信息:
function ShowResults(event)
{
var searchString = $.trim($("#searchInput").val());
if (!System.Gadget.Flyout.show || !gFlyoutResultsAreVisible)
{
// Load up the results page into the flyout
System.Gadget.Flyout.file = "results.html";
System.Gadget.Flyout.show = true;
System.Gadget.Flyout.document.parentWindow.attachEvent("onload", function()
{
System.Gadget.Flyout.document.parentWindow.PerformSearch(searchString);
});
}
}
不幸的是,這仍然有一些問題。只要我對System.Gadget.Flyout.file!=「results.html」進行檢查,並且小工具運行該代碼段,它就會中斷。 與此同時,我添加了自己的變量flyoutResultsAreVisible,這是我在打開結果展開工具時手動設置的。查看我編輯的帖子以獲取更詳細的代碼。 – 2009-11-17 22:23:26
對不起,我的錯。我忘了System.Gadget.Flyout.file是**只寫**,這意味着它沒有get,並且如果嘗試讀取值,將會引發錯誤。該文檔實際上指定該屬性爲讀/寫(獲取和設置)。對微軟來說,這是一個很大的「who」「。看到我的解決方案的更新答案,我會更新我對MS文檔中System.Gadget.Flyout.file的評論:) – 2009-11-19 15:15:42