2011-09-15 3 views
-3

작동하지 않습니다 그러나 링크를 클릭해도 작동하지 않습니다. 많은 문서를 읽었지 만, 아무 문제가 없었다고 생각합니다. 작동시킬 수있는 방법을 찾지 못했기 때문입니다.그리스 몽키에 (unsafeWindow와) 나의 정의 변수는 내 그리스 몽키 스크립트로 웹 사이트에이 같은 링크를 추가 할

myScript = document.createElement('script'); 
myScript.setAttribute("type", "text/javascript"); 
myScript.setAttribute("language", "javascript");; 
myScript.textContent = "var myGlobalVar = 'Hello world!';"; 

document.body.appendChild(myScript); 
document.body.removeChild(myScript); 

물론이 역시 작동하지 않았다 :

는 또한이 방법을 시도했다.

누락 된 부분이 있습니까? 나는 또한 자사의 onClick 속성을 addEventListener으로 수정하려고 시도했지만 작동하지 않았습니다.

당신이 체크 아웃 할 수 있습니다 http://jsfiddle.net/C65rm/ 내가 여기에서 직접 코드의 자바 스크립트 부분을 복사 : http://wiki.greasespot.net/UnsafeWindow

을 그건 그렇고, 내가 마지막으로 실제로 내가 전역 변수를 정의하려고하지 오전 말하고 싶은, 그러나 전역 함수를 정의하려고합니다. 여기 나의 예제에서 나는 이해를 위해 변수를 사용했다.

미리 감사드립니다.

+0

"작동하지 않음"** 어떤 일이 발생 했습니까? ** –

+0

클릭하면 경고하지 않습니다. 이 문제가 제 파이어 폭스 버전과 관련이 있는지 궁금합니다. 6.0.2 – Nail

+0

수행 할 수있는 디버깅이 더 있습니다. Javascript 콘솔에서 무엇을 볼 수 있습니까? (Firebug를 사용하고 있습니까?) 코드 실행이 얼마나 진행되었는지 추적하기 위해 함수 전체에 디버깅 코드를 배치 했습니까? –

답변

0

해결. 어리석은 문제로 고통받는 사람이 있으면 여기에 내 솔루션을 게시하고 있습니다.

var myDiv = document.createElement("div"); 
myDiv.innerHTML = "<a href='#' onclick='myFunc();'>Alert</a>"; 
document.body.appendChild(myDiv); 

unsafeWindow.myDiv = function() { 
    myGlobalVar = "Hello world!"; 
    alert(myGlobalVar); 
}; 

내 목적은 웹 페이지의 일부의 onClick 이벤트 (내 스크립트에 정의되어 있습니다) 자바 스크립트 기능을 추가했다. 따라서 위의 코드는 Firefox에서 작동했습니다.

관련 문제