2009-08-27 5 views
0

Im 만들기 파이어 폭스 확장. 하나의 함수는 모든 탭에 값을 저장하여 나중에 다른 함수에서 값을 사용합니다.모든 탭 (파이어 폭스 확장자)에 다른 값을 저장하는 방법

function setValue(value) { 

    var attr = gBrowser.document.createAttribute("value"); 

    attr.value = value; 

    gBrowser.document.attributes.setNamedItem(attr); 

}; 



function getValue() { 

    var attr = gBrowser.document.attributes.getNamedItem("value"); 

    if (attr != undefined && attr != null) 

    return attr.value; 

    else 

    return null; 

}; 

어떤 이유로 든 작동하지 않습니다. 내 코드에서 오류를 발견 할 수 있습니까?
함수 getValue()는 활성 탭의 값을 가져야합니다.

답변

1

여기에 코드보다 더 많은 오류가 있습니다

  • gBrowser.document 없습니다 - 당신은 아마 gBrowser.ownerDocument하거나 document (해당하지만 간단)을 의미했다.
  • gBrowser.document.attributes도 아니며 gBrowser.attributes을 의미합니다. attributes를 사용
  • 매우 이상한 것 같다, 코드의 최대 고정 버전으로 상당 gBrowser.setAttribute("value", value)gBrowser.getAttribute("value")
  • 여전히 고쳐 코드가 아마 필요가 무엇을 할 것입니다 그리고 당신은 정확하게 당신이 필요로하는 무엇을 지정하지 않은 `gBrowser.value : 당신은 그냥 객체에 새 속성을 첨부 항상 자유 롭다 자바 스크립트에서 (자바, 말, 달리) 때문에 (? gBrowser.mCurrentTab.setAttribute)
+0

대신 속성을 사용하여, 당신은 또한 그냥 자바 스크립트 속성을 사용할 수 있습니다 = 'someValue' '('value '에는 아직 의미가 없다고 가정하면 확인해야합니다.) – MatrixFrog