3

.Net と BHO を使用して簡単な Internet Explorer 9 アドオンを作成し、外部の js ファイルをページにロードして実行しようとしています。

ieInstance_DownloadComplete を作成しました (ieInstance_DocumentComplete も試しましたが、状況はさらに悪化しました)。

InternetExplorer explorer = this.ieInstance;
var document = explorer.Document as IHTMLDocument2;
document.parentWindow.execScript(
@"
if (document.getElementById('KCScript') == null)
  {
      var fileref=document.createElement('script');
      fileref.setAttribute('id', 'KCScript');
      fileref.setAttribute('type','text/javascript');
      fileref.setAttribute('charset', 'UTF-8')
      fileref.setAttribute('src', 'C:/test.js');
      fileref.onload = function () { eee(); };
      if (typeof fileref!='undefined')
        document.getElementsByTagName('head')[0].appendChild(fileref);}","JavaScript");
  }

ページが読み込まれると、test.js が IE 開発者ツールのページに添付されていることがわかります。しかし、関数 eee() は発生せず、エラーが発生します:「SCRIPT1014: 無効な文字 test.js、行 1、文字 1」

test.js:

function eee()
{
    alert('ttt!');
};

test.js は UTF-8 ですので、読み込みに問題はありません。他に何かあります。

どうしたの?何か案は?前もって感謝します!

4

1 に答える 1

0
  1. 「BOMなしのUTF-8」エンコーディングでJSを再保存してみてください
  2. JSをhttp://example.com/test.jsとしてリモートサーバーに配置してみてください
于 2012-09-06T09:32:06.540 に答える