雖然PM的機器上有VS.NET,不過加密後的腳本是不能跟蹤的,咣噹。要是把開發版本部署到那個問題機器上去調試,那簡直太麻煩了。不過幸好出錯的模塊很獨立,於是單把開發版的腳本搗騰出來,做了一個包含菜單使用的頁面到PM的機器上去debug。跟蹤到下面的語句時:
menuHtml.style.filter = filterString;
> menuHtml.filters[0].apply();
menuHtml.style.visibility = 'visible';
menuHtml.filters[0].play(0.25);
出來一個異常,說沒有權限執行這個操作,也就是不能執行慮境的apply()方法。出異常後顯然就跳過了menuHtml.style.visibility = 'visible';及以後的語句,所以顯示不出來菜單囉。在以往的DHTML開發經驗中,只要使用的瀏覽器版本支持了指定的慮境效果,就應該沒有問題能順利的執行,這個執行慮境效果的權限問題還從來沒有遇到過。後來"逼問"那位PM,他似乎也沒有對IE做什麼特別的設置,打開IE的配置項目察看也都沒有什麼特別的設置。由於不知道出錯原因,就只有囫圇吞棗的try掉那個慮境的調用:
{
try
{
menuHtml.style.visibility = 'hidden';
menuHtml.style.filter = filterString;
menuHtml.filters[0].apply();
menuHtml.style.visibility = 'visible';
menuHtml.filters[0].play(0.25);
}
catch(e)
{
menuHtml.style.visibility = 'visible';
}
}
最後也不知道到底是什麼問題引起的錯誤,放這兒立此存照了。