2009-04-09 28 views
0

Firefoxの拡張機能から次のコードを実行しようとしていますが、機能していません。 else部分の中の実際のコードは異なっていましたが、この単純なforループも実行されていません。 forループのない警告ボックスが機能しています。なぜこれが動作していないのか誰かが知ることができます。 おかげJavascript Firefoxの問題

window.addEventListener("pageshow",function(e) 
    { 
     if((document.title.trim()=="Mozilla Firefox") || 
      (document.title.trim()=="New Tab")) 
     { 
     } 
     else 
     { 
      for(i=0;i<3;i++) 
      { 
       alert("hi"); 
      } 
     } 
    },true);  

答えて

2

それはFirefoxの拡張機能内なら、単に文書の代わりにでcontent.documentを使用してみてください。

EDIT:また

var metaTags = content.document.getElementsByTagName("meta"); 

for(var i = 0; i < metaTags.length; i++) { 
    // do something with metaTags[i] 
} 

それが助け場合、extensions I've writtenのいずれかのソースに目を通すこと自由に感じ。

+0

こんにちはクリス、 実際document.title働いていると私は要素にアクセスするためでcontent.documentを使用していました。しかし、私はメタタグをループしようとしていましたが、何らかの理由でループが動作していません.URL返信ありがとうございました – felix

0

document.title.trim()

あなたはそれが何をしたいのですか? String-> trim()はFirefox 3.1でしか利用できない非標準のJavaScriptメソッドです。

+0

うん、document.title.trim()は正しく動作していますが、ループは動作しません。 – felix

0

私は、forループのために...ループ内を変更し、それが働いた:)

+0

for..inは、単純な線形配列には間違ったタイプのループを使用していますが、ここではコード全体で何が起こっているのか分かりませんが、for(var i = 0 ; i bobince

+0

アドレスバーに貼り付けて空白のFFウィンドウで実行しますforの問題を見るにはjavascriptで: javascript:var s = ""; var head = document.getElementsByTagName( "head"); for(var i in head){s + = i + "\ n ";} alert(s); 入手方法: 長さ アイテム namedItem –

+0

あなたが期待していないかもしれない追加項目があります。 "for(var i = 0; i