應用慮鏡特效時遇到瀏覽器權限問題

    人要是倒黴啊,據說喝涼水都塞牙。雖然這麼些年了牙沒有被涼水塞過,不過倒黴的事情卻沒有因此而消失。一個使用了快1年的腳本菜單,在新來的PM的機器上始終彈不出來,真不知道是在欺生還是在玩我。由於產品安裝包的腳本代碼都經過了混淆和加密,要在那個出問題的機器上定位問題還真的鬱悶。

    雖然PM的機器上有VS.NET,不過加密後的腳本是不能跟蹤的,咣噹。要是把開發版本部署到那個問題機器上去調試,那簡直太麻煩了。不過幸好出錯的模塊很獨立,於是單把開發版的腳本搗騰出來,做了一個包含菜單使用的頁面到PM的機器上去debug。跟蹤到下面的語句時:
   menuHtml.style.visibility = 'hidden';
   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掉那個慮境的調用:
if ( filterString )
{
    
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';
    }

}

    最後也不知道到底是什麼問題引起的錯誤,放這兒立此存照了。
 
發佈了147 篇原創文章 · 獲贊 0 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章