2009-07-30 7 views
2

私は、フォントサイズを変更することを意味している機能を持っている:Javascriptのセキュリティエラー1000年リサイズテキスト

それは探しスタイルシートが機能があるページと同じディレクトリにある場合、これは動作します
// change the font size of the document 
function changeSize(fontSize) { 
    var sheets = document.styleSheets; // Array of all stylesheets 

    for(var i=0; i < sheets.length; i++) { // For each stylesheet 
     var sheet = sheets[i]; 

     // alert(sheets[i].title); 

     if(sheet.title == 'textSize') { // find the one called 'textSize' 
      // alert("hello!"); 
      var rules = sheet.cssRules || sheet.rules; // Array of rules 
      var rule = rules[0]; // The first rule 

      // Should only be one rule, and it should be a one line font-size declaration 
      if(rules.length == 1 && rule.selectorText.match(/body/i) && rule.style.fontSize) { 
       rule.style.fontSize = fontSize; 
       return true; 
      } 
      else return false; // This is a bad stylesheet, return false 
     } 
    } 

    return false; // Haven't found the stylesheet - return false 
    } 

それが別のディレクトリにある場合には - たとえば../js/js.js代わり./js.jsの - それは、次のエラーがスローされます。

Security error" code: "1000 

任意のアイデアは、私はこれを解決する方法?
私はjavascriptについてよく知らないし、単純に「許可されていない」ケースではないと思っていますが、もしそうなら賢明な選択肢はありますか?

おかげ

答えて

3

エラー1000は、通常、あなたが許可されていないDOMで何かを変更しようとしていることを意味します。あなたはページと同じディレクトリ内のスタイルシートしか操作していないようです - セキュリティ上の問題でしょう。問題のCSSファイルは絶対パス、相対パス、どのように参照していますか?

+0

私は相対的かつ絶対的な試みをしました。 –

1

注意:

セキュリティエラー "コード:" 1000年は、Firefox用Skypeの拡張によって引き起こされます。私は他のブラウザ用のSkypeアドオンがあるかどうかわかりませんが、Firefoxを使用するSkype拡張機能は、特にJavaScriptを使用してスタイルを動的に変更するサイトで多くの問題を引き起こしています。

大変申し訳ございません。

関連する問題