2014-10-21 3 views
0

내가 GeckoFX (29)뿐만 아니라 XULRunner가 사용하고를 사용하여 호출합니다.어떻게 자바 스크립트 함수를 삽입하고 나중에 gecofx

  string text = " function hi(){ return 1;}"; 
      GeckoElement script = geckoWebBrowser.Document.CreateElement("script"); 
      script.SetAttribute("type", "text/javascript"); 
      script.SetAttribute("language", "javascript"); 
      GeckoTextNode popText = geckoWebBrowser.Document.CreateTextNode(text); 
      script.AppendChild(popText); 
      geckoWebBrowser.Document.Head.AppendChild(script); 

나중에이 함수를 이와 같이 호출합니다.

using (AutoJSContext context = new AutoJSContext(geckoWebBrowser.Window.JSContext)) 
      { 
    context.EvaluateScript(" hi();" , out result); 
} 

함수에 의한 값 반환이 발생하지 않습니다. 안녕 결과가 비어 있습니다. 평가 스크립트가 false를 반환합니다.

이 도움이 어떤 문제가 있습니까? 감사

답변

1

나는 그런 문서에 스크립트를 추가하는 것은 그것을 구문 분석됩니다 의심.

그러나이 같은 스크립트 기능 추가 원하는 효과가 있어야 실행 : 당신처럼 호출 할 수 있습니다 나중에 다음

string text = " function hi(){ return 1;}"; 
using (AutoJSContext context = new AutoJSContext(geckoWebBrowser.Window.JSContext)) 
{ 
    context.EvaluateScript(text, out result); 
} 

그리고 것은이었다 :

using (AutoJSContext context = new AutoJSContext(geckoWebBrowser.Window.JSContext)) 
{ 
     context.EvaluateScript(" hi();" , out result); 
} 
+0

이미 실현 및 고정 그것은 .. 관심 어쨌든 감사합니다. –

관련 문제